3

を使用する電子メール ジョブがあります。System.Net.Mail

電子メールはフォルダーに送信され、ジョブが実行されて、指定された時刻に Exchange サーバーのピックアップ フォルダーにファイルがコピーされます。電子メールのコピーは、Bcc フィールドを使用して内部メールボックスに送信されます。

Exchange の Pickup フォルダーを使用して送信された電子メールにプロパティが追加されないという既知の問題があるため、回避策は Bcc フィールドをメッセージ ヘッダーに直接追加することですが、これは 2012 年 7 月 28 日の時点で機能しなくなりました。Bcc

' BCC doesn't work when sent internally using the Pickup folder, 
' so need to add to message headers instead
'message.Bcc.Add(New MailAddress("internalMailbox@mydomain.com"))
message.Headers.Add("Bcc", "internalMailbox@mydomain.com")

Dim smtp = New SmtpClient(exchangeServer)
smtp.DeliveryMethod = SmtpDeliveryMethod.SpecifiedPickupDirectory
smtp.PickupDirectoryLocation = temporaryEmailFolder

smtp.Send(message)

Microsoft は Exchange で何かを変更したので、電子メール ヘッダーの Bcc アドレスも機能しなくなりましたか? または、これを回避する別の方法はありますか?

に切り替えようとしSystem.Web.Mailましたが、メッセージをフォルダに配信できません。

Windows Server 2008 R2 Standard マシンで Exchange 2010 を使用しています

編集:

その日には、たくさんのアップデートがインストールされていました。それらの1つがこの問題を引き起こしていると推測していますが、それらの膨大なリストがあり、ゆっくりと進んでいます。次の更新プログラムで処理されない Bcc メッセージ ヘッダーに関連する既知の問題を知っている人はいますか?

  • Exchange Server 2010 更新プログラムのロールアップ 6 (KB2529939)
  • Exchange Server 2010 更新プログラムのロールアップ 3-v3 (KB2608646)
  • Microsoft Office 2010 フィルター パック Service Pack 1 (SP1)
  • Silverlight の更新
  • および 52 のセキュリティ更新プログラム、ホット フィックス、および Windows 用の更新プログラム
    • ホットフィックス KB2679255
    • セキュリティ更新プログラム KB2536276
    • セキュリティ更新プログラム KB2560656
    • セキュリティ更新プログラム KB2564958
    • セキュリティ更新プログラム KB2567680
    • セキュリティ更新プログラム KB2570947
    • セキュリティ更新プログラム KB2584146
    • セキュリティ更新プログラム KB2585542
    • セキュリティ更新プログラム KB2604115
    • セキュリティ更新プログラム KB2620704
    • セキュリティ更新プログラム KB2520712
    • セキュリティ更新プログラム KB2521440
    • セキュリティ更新プログラム KB2631813
    • セキュリティ更新プログラム KB2643719
    • セキュリティ更新プログラム KB2644615
    • セキュリティ更新プログラム KB2645640
    • セキュリティ更新プログラム KB2653956
    • セキュリティ更新プログラム KB2654428
    • セキュリティ更新プログラム KB2655992
    • セキュリティ更新プログラム KB2656356
    • セキュリティ更新プログラム KB2656373
    • セキュリティ更新プログラム KB2656411
    • セキュリティ更新プログラム KB2658846
    • セキュリティ更新プログラム KB2659262
    • セキュリティ更新プログラム KB2667402
    • セキュリティ更新プログラム KB2676562
    • セキュリティ更新プログラム KB2685939
    • セキュリティ更新プログラム KB2686831
    • セキュリティ更新プログラム KB2688338
    • セキュリティ更新プログラム KB2690533
    • セキュリティ更新プログラム KB2691442
    • セキュリティ更新プログラム KB2695962
    • セキュリティ更新プログラム KB2698365
    • セキュリティ更新プログラム KB2699988
    • セキュリティ更新プログラム KB2709715
    • セキュリティ更新プログラム KB2718523
    • セキュリティ更新プログラム KB2719985
    • KB2545698 を更新する
    • KB2547666 を更新
    • KB2552343 を更新する
    • KB2563227 を更新します。
    • KB2603229 を更新する
    • KB2507047 を更新する
    • KB2608658 を更新する
    • KB2633952 を更新します。
    • KB2640148 を更新する
    • KB2660075 を更新する
    • KB2677070 を更新します。
    • KB2699779 を更新する
    • KB2709630 を更新します。
    • KB2718704 を更新する
    • ウィンドウズIE9

または、アップデートが何をするのか、そしてこれらがこの特定の問題を引き起こしているかどうかを確認する簡単な方法を知っている人はいますか?

4

1 に答える 1

1

どのアップデートがこの問題を引き起こしているのか理解できず、一度に1つずつアンインストールして解決する時間がないため、別の方法を見つけました。

現在のコードを使用してメールにヘッダー情報がまったく追加されていないことに気付きましたが、アドレスをBccとして追加するX-Receiverと、メッセージヘッダーに2行目が作成されます(メッセージをPickupフォルダーにドロップするとExchangeは無視します) )、配信フォルダ内のメールをループして2X-Receiver行目を代わりに置き換えるスクリプトを作成しましたBcc

' This no longer adds Bcc to message header for whatever reason
'message.Headers.Add("Bcc", "bccRecipient@mydomain.com")
message.Bcc.Add(New MailAddress("bccRecipient@mydomain.com"))

...

Dim content As String
Dim regex As Regex = New Regex("(X-Receiver:.*?\n)(X-Receiver:)")

' Replace of the 2nd instance of "X-Receiver:" with "Bcc:"
For Each fileName As String In Directory.GetFiles(EMAIL_DELIVERY_FOLDER)
    content = File.ReadAllText(fileName)
    content = regex.Replace(content, "$1Bcc:", 1)
    File.WriteAllText(fileName, content)
Next

これにより、メールヘッダーが

X-Sender: "Test"
 <sender@mydomain.com>
X-Receiver: receipient@mydomain.com
X-Receiver: bccRecipient@mydomain.com
MIME-Version: 1.0

X-Sender: "Test"
 <sender@mydomain.com>
X-Receiver: receipient@mydomain.com
Bcc: bccRecipient@mydomain.com
MIME-Version: 1.0

これは、.emlメッセージがExchangeのPickupフォルダーにドロップされたときに、指定されたBccアドレスに電子メールのブラインドコピーを正しく送信します。

于 2012-09-14T15:45:40.370 に答える