徵狀
請試想下列案例:
-
您可以使用 Microsoft Exchange Server 2016年信箱或 Exchange Server 2013年信箱,以傳送電子郵件訊息。
-
電子郵件訊息的主旨行包含不支援編碼的字元,從 CP 或 MS 開始,並藉由"-"而不是數字,例如 cp 850。
在這個案例中,不被傳送電子郵件。此外,您可能會收到類似下列的未傳遞報告 (NDR) 訊息:
遠端伺服器傳回 ' 550 5.6.0 貓。InvalidContent.Exception: InvalidCharsetException,字元集名稱 (cp 850) 是無效或是尚未安裝。;無法處理訊息與 InternalId InternalId,InternetMessageId 的內容。 '
因此,日誌報告電子郵件的 NDR cp 850 個字元的郵件無法傳送給 Exchange 日誌目的信箱。
原因
之所以發生這個問題,是因為 Exchange Server 2016年,Exchange Server 2013年不處理電子郵件訊息如果主旨行包含不支援編碼的字元。
解決方案
若要修正這個問題,安裝下列更新的程序:
-
Exchange Server 2016,安裝累積更新 9或更新的累積更新的 Exchange Server 2016年。
-
Exchange Server 2013,安裝累積更新 20 或更新的累積更新的 Exchange Server 2013年。
此外,功能是可以讓使用組態檔的預設字元集的後援。如果您啟用這項功能,就可以傳送具有不支援的編碼的字元,在 [主旨] 行中的電子郵件訊息。若要啟用這項功能,請依照下列步驟執行:
-
設定這兩個檔案: EdgeTransport.exe.config 和 MSExchangeDelivery.exe.config。
-
注意根據預設,這兩個檔案都位於下列資料夾: C:\Program Files\Microsoft\Exchange Server\V14\Bin,[記事本] 中開啟的檔案。
-
在每個檔案中,加入下列的設定項目,在 [組態項目] 下:
注意項目中唯一的差別在於 「 版本 」。例如,使用"版本 = 15.0.1366.0"的 Exchange Server 2013年累積更新 20"版本 = 15.1.1462.0" Exchange Server 2016年累積更新 9。
<configSections> <section name="CTS" type="Microsoft.Exchange.Data.Internal.CtsConfigurationSection, Microsoft.Exchange.Data.Common, Version=15.0.1366.0, Culture=Neutral, PublicKeyToken=31bf3856ad364e35" /> </configSections> <CTS> <Globalization> <FallbackToDefaultCharset Fallback="true"/> <DefaultCulture Culture="en"/> </Globalization> </CTS>
附註:
a) 的 [ configSections ] 區段必須是.net 中強制執行組態項目的第一個項目。如果沒有,傳輸服務停止回應啟動時。
b) 的版本、 文化特性和公開金鑰語彙基元, Microsoft.Exchange.Data.Common組件必須是正確的。您可以找到它們從全域組件快取 (GAC) 中。
c) 的FallbackToDefaultCharset項目用來開啟或關閉這項功能。您可以開啟或關閉這項功能,藉由設定,則為 true或false 之類的後援屬性。
如果不支援的電子郵件訊息的字元集,請指定後援文化特性為 d) 的DefaultCUlture項目。您必須將文化特性屬性設定為有效的文化特性名稱。如果沒有,Exchange 會使用目前執行緒的文化特性,做為後援文化特性。在範例組態中,後援文化特性設定為"en"。
-
-
儲存 EdgeTransport.exe.config 和 MSExchangeDelivery.exe.config 檔案。
-
重新啟動傳輸服務,才會生效。
注意必須小心編輯組態檔。沒有追蹤或診斷的事件記錄檔。如預期般在組態檔中是否打錯的字,不會運作的功能。此外,請注意,這種訊息有不支援的字元集,我們並不能保證訊息的任何項目接收時,我們並不能保證接收時,會將此訊息所造成的任何訊息失真。
此外,以下是相關的連結,讓您參考:包含不支援編碼的字元,在 [主旨] 行中的電子郵件訊息不在 Exchange Server 2010年環境中傳遞。
其他相關資訊
套用這個更新,以及更新 EdgeTransport.exe.config 檔案之後,就可能發生的問題。W風車 EdgeTransport.exe.config 檔案以組 AppConfigValue 更新Exchange Server 2016年或 Exchange Server 2013年稍後的累積更新的安裝期間,您可能會收到下列錯誤訊息:
Microsoft.Exchange.Data.Common.LocalizedException: 組 AppConfigValue: F:\Program Files\Microsoft\Exchange Server\V15\bin\EdgeTransport.exe.config,檔案中找不到 [節點] 區段,但它不是唯一的。
若要修正這個問題,,執行 Exchange Server 2016年或 Exchange Server 2013年稍後的累積更新之前,您應該採取下列步驟來移除 CTS 區段,如上表所示從 EdgeTransport.exe.config 檔案:
-
停止所有的 Exchange 服務。
-
複製,並將 EdgeTransport.exe.config 檔案儲存。
-
移除下列的 CTS 區段 (如上面所列),從 EdgeTransport.exe.config 檔案。<CTS> <Globalization> <FallbackToDefaultCharset Fallback="true"/> <DefaultCulture Culture="en"/> </Globalization> </CTS>
-
儲存更新的 EdgeTransport.exe.config 檔案。
-
執行 Exchange Server 2016年或 Exchange Server 2013年稍後累積更新的安裝程式。
-
一旦安裝完成時,請依照此文件,以更新 EdgeTransport.exe.config 檔案。
狀態
Microsoft 已確認<適用於>一節中所列的 Microsoft 產品確實有上述問題。
參考
深入了解術語 ,Microsoft 會使用描述軟體更新。