1

現在、Microsoft Outlookアカウントごとに事前に取得したデータに基づいて署名を設定するアプリケーションを作成中です(ユーザーはさまざまな目的で複数のOutlookアカウントを持っている場合があります)。

デフォルトのアカウントに署名を設定することはできますが、各Outlookアカウントに個別に署名を設定する方法をまだ見つけていません。私は多くの独自の調査を行い、Microsoft.Office.Interopオブジェクトをあまり運がなくて調べました。

これを達成する方法はありますか?

4

1 に答える 1

2

プログラムで Outlook プロファイルを選択するには、次を使用します。

Microsoft.Office.Interop.Outlook.Application App =
    new Microsoft.Office.Interop.Outlook.Application();
NameSpace mapi = App.GetNamespace("MAPI");
mapi.Logon(profileName);

明らかに、profileNameOutlook の起動時にドロップダウン リストに表示されるものに設定します (コントロール パネルの電子メール設定で既定のプロファイルを設定していない場合)。

ただし、MAPI ログオンは複数のセッションをサポートしていますが、Outlook は複数のセッションをサポートしていないため、これはさまざまな点で問題があります

意味: Outlook が既に実行されている場合は、に設定NewSessionすることもできますがtrue、役に立ちません。設定した名前に関係なく、現在ログインしているプロファイルが表示されます。Outlook ゾンビ (テスト中に発生しました。タスク マネージャーで確認してください)、つまり、UI が表示されない Outlook がある場合、問題は同じです。

署名を使用しているときに Outlook が実行されないようにできる場合は、問題ありません。

于 2012-04-20T13:10:44.903 に答える