1

私は、社内のワークフロープロセスを開始するユーザーに電子メールを送信するジョブを実行しています。定期的に、ユーザーは電子メールを受け取っていないと断言しますが、メール管理者に交換レポートを取得するために行くと、10 分の 10 は削除済みアイテムに含まれています。:P

.net C# (System.Net.Mail だと思います) 経由で送信されたメッセージがユーザーのメール ボックスに届いたことをプログラムで確認できるようにしたいと考えています。

Exchange 2007 で、すべてのメッセージは内部です。

4

3 に答える 3

2

System.Net.Mail ではできません。Exchange の API を調べて、電子メールが誰かの電子メール アカウントに存在するかどうかを判断する必要があります。

http://support.microsoft.com/kb/813349

于 2009-04-10T02:03:17.823 に答える
1

あなたが望むことをする2つの方法があります:

  • 「配信確認」をオンにしてメールを送信します(「開封確認」ではなく、CoddeToGloryが言ったように、これはユーザーが却下できます)。次に、Exchange Web サービス、Outlook+COM、VBA、MAPI など、適切な方法でこれらの確認を受信するメールボックスを監視するだけです。

  • Exchange への PowerShell インターフェイスを使用して、Get-MessageTrackingLog の出力をキャプチャし、StoreDriver + Deliver イベントを探します。

于 2009-09-25T11:28:38.507 に答える
1

すべての跳ね返りをキャッチするためのアカウントを設定します。このようにして、どれが到達し、どれが到達しなかったかがわかります。これは、メールが確実に届くようにするための最良の方法です。

または、メッセージ ヘッダーを介して開封確認を追加することもできます (Disposition-Notification-To を設定することにより)。しかし、繰り返しますが、ユーザーはそれを読まないことを選択できます...

于 2009-04-10T02:27:38.857 に答える