7

この問題は、EWSを使用してインラインイメージ(添付ファイル)を含むHTMLメッセージを送信しようとしていたことを反映しています。しかし、私は最も簡単なフォームに戻って、私もHTMLメッセージを送信することができないことがわかりました。Exchange Webサービス(2010 SP1)からHTML(multipart/alternative)を送信するには

私はC#、.NET 4、EWS API 1.1、Exchange Server 2010 SP1を使用しています。ここで

は、私のコードの中核である:

そのコードを使用して
ExchangeConnection = new ExchangeService(ExchangeVersion.Exchange2010_SP1); 
ExchangeConnection.Credentials = new WebCredentials(Username, Password, Domain); 
ExchangeConnection.Url = new Uri(ServiceURI); 

string MailBody = @"<html><head></head><body> 
    This is a <b>test</b> <strong>HTML</strong> <em>message</em>.<br><br> 
    Did it work?</body></html>"; 

NewMessage = new EmailMessage(ExchangeConnection); 
NewMessage.Subject = "Test HTML Message #001"; 
NewMessage.Body = MailBody; 
NewMessage.Body.BodyType = BodyType.HTML; 
NewMessage.ToRecipients.Add("[email protected]"); 
NewMessage.Send(); 

私は以下の内容を含むメッセージが表示されます。

Subject: Test HTML Message #001 
Thread-Topic: Test HTML Message #001 
Thread-Index: Acuy3U6nqQTa4W4ZQu6ueHPb2nPDPg== 
Date: Thu, 13 Jan 2011 04:49:48 +0000 
Message-ID: <[email protected]> 
Accept-Language: en-US 
Content-Language: en-US 
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-originating-ip: [x.x.x.x] 
Content-Type: text/plain; charset="us-ascii" 
Content-Transfer-Encoding: quoted-printable 
MIME-Version: 1.0 
X-Spam: [F=0.2000000000; CM=0.500; S=0.200(2010122901)] 
X-MAIL-FROM: <[email protected]> 
X-SOURCE-IP: [67.136.148.58] 
X-AnalysisOut: [v=1.0 c=1 a=WYc53Y7r_f4A:10 a=BLceEmwcHowA:10 a=kj9zAlcOel] 
X-AnalysisOut: [0A:10 a=xqWC_Br6kY4A:10 a=ERe/uVw5acJt2lgRGY+7Og==:17 a=10] 
X-AnalysisOut: [TGqZ3wK2PL4t1FdnoA:9 a=mfhh-WWaJa5gWHOyyF854Vzt7EAA:4 a=Cj] 
X-AnalysisOut: [uIK1q_8ugA:10] 

This is a test HTML message. 

Did it work? 

何MIME宣言がありませんし、何もtext/htmlではありませんセクション。

私はこのような何かを得る(同じExchangeサーバー上の)見通しを通じて同様のメッセージを送信する場合:

Subject: Test From Outlook 
Thread-Topic: Test From Outlook 
Thread-Index: AcuzMwJCFB8PS6wYQeeV4IeSkT/mxQ== 
Date: Thu, 13 Jan 2011 15:03:17 +0000 
Message-ID: <[email protected]> 
Accept-Language: en-US 
Content-Language: en-US 
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-originating-ip: [x.x.x.x] 
Content-Type: multipart/alternative; 
    boundary="_000_E026BAD23A27DB42B74F0DB569E9986977F237CHALLENGERDenverZ_" 
MIME-Version: 1.0 
X-Spam: [F=0.2000000000; CM=0.500; S=0.200(2010122901)] 
X-MAIL-FROM: <[email protected]> 
X-SOURCE-IP: [67.136.148.58] 
X-AnalysisOut: [v=1.0 c=1 a=olvCdMnC_oMA:10 a=BLceEmwcHowA:10 a=xqWC_Br6kY] 
X-AnalysisOut: [4A:10 a=ERe/uVw5acJt2lgRGY+7Og==:17 a=2iPVs5MlqxP_VJ4oz58A] 
X-AnalysisOut: [:9 a=x0_hJeNGqEWpZ67nkUaF-VHO8CMA:4 a=CjuIK1q_8ugA:10 a=yM] 
X-AnalysisOut: [hMjlubAAAA:8 a=SSmOFEACAAAA:8 a=bSa8Y9cTgW9e4uXm0lgA:9 a=w] 
X-AnalysisOut: [EVqP49dmlVP1afgSrUA:7 a=MTMROL1LpFqQeTH2_C9armvf4mgA:4] 

--_000_E026BAD23A27DB42B74F0DB569E9986977F237CHALLENGERDenverZ_ 
Content-Type: text/plain; charset="us-ascii" 
Content-Transfer-Encoding: quoted-printable 

This is an HTML message. 

What do the headers look like? 

Tony 

--_000_E026BAD23A27DB42B74F0DB569E9986977F237CHALLENGERDenverZ_ 
Content-Type: text/html; charset="us-ascii" 
Content-Transfer-Encoding: quoted-printable 

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" xmlns:o=3D"urn:schemas-micr= 
... the correct html code for the message follows here ... 

誰もが使用してコードを介して第2の1のようなメッセージを取得する方法を私に説明することができますEWS?ありがとう!

答えて

2

私はちょうど非常に似た問題を抱えていました。最終的に、適切な複数部分のMIMEテキストとHTMLの代わりに電子メールの乱れたバージョンを受け取っていた特定のアカウントに釘付けにしました。このアカウントは、ExchangeでMAPIリッチテキスト電子メール([全般]タブ)に「既定の設定を使用する」ように設定されていたため、他のアカウントが「しない」に設定されていました。

Exchangeは連絡先電子メールが送信されていることを知っていて、「スマート」にしてOutlook専用の形式で送信しようとしましたが、そのアドレスのクライアントはOutlookを使用していなかったため、電子メールを正しく表示することはできません。私は、ユーザーの代わりにグローバルレベルでこの設定を変更することも可能だと思いますが、その場所がどこにあるのかわかりません。

Outlookから送信されたときに動作する理由は、Outlook 2010がメッセージをHTML形式に強制的に送信することができるからです。ただし、EWS管理APIはそれを実行できないようです。

0

私はちょうど起こっていることと設定を変更する方法を説明するこのpageを見つけました。 |

問題は、次の交換PowerShellを実行するために何であったかを明らかにした我々がチェック最後の事はは、「get-remotedomain:

この

は彼らの結論でありますfl "である。次に、コンテンツタイプが「すべてのメッセージをテキストフォーマットを使用するMIMEメッセージに変換する」(つまりプレーンテキスト)MimeTextに設定されていることを確認しました。次に、コンテンツタイプをmimehtmltextに変更しました(元のメッセージがテキストメッセージでない限り、HTMLフォーマットを使用するMIMEメッセージにメッセージを変換します。元のメッセージがテキストメッセージの場合、送信メッセージはテキストフォーマットを使用するMIMEメッセージです)。次のコマンドを実行します。 "get-remotedomain | set-remotedomain -ContentType MimeHtmlText "を参照してください。

関連する問題