2011-07-14 7 views
1

LumiSoft.NET MIME libraryを使用してEMLファイルを作成します。これらのEMLファイルは、データベース値によって作成されます。電子メールの本文には、プレーンテキスト、RTF、またはHTMLを使用できます。我々はそれがあるかわからないので、体がプレーンテキストまたはRTF(ときEMLファイルのRTFメッセージ本文

Content-Type: text/html; charset="utf-8" 

:ボディはとてもHTMLときにそれが発生したときに私たちは、EMLファイルのコンテンツ・タイプは、この行で設定されている、知っています)、我々はHTML EMLファイルが異なる製品間でうまく表示さそう

Content-Type: text/rtf; charset="utf-8". 

ようRTFにコンテンツタイプを設定し...しかし、RTF EMLファイルは、異なる製品によって異なって解釈しているようです。これは何年も働いていて、結果として得られたEMLファイルはOutlook Expressに対してQAされており、正常に登場しました。しかし、最近、私たちはいくつかの顧客に、メッセージ本体を添付ファイルとして表示するこれらの電子メールに関する問題を報告しました。 Outlook 2007 SP2およびOutlook 2010では、電子メール本文は実際に電子メールに添付されたTXTファイルとして表示され、電子メール内の本文は空です。さらに、dtSearchという製品を使用し、これらのEMLファイルをHTMLに変換する場合、EMLファイルの本文がAttachment0.DATという名前の添付ファイルのコンテンツに表示される同様の変換を行います。さらに、これらのEMLファイルをOutlook Redemptionで処理し、Outlook 2010と同様に、メッセージ本文はTXT添付ファイルにあります。ボード全体で奇妙な動作...ここでは、実際の動作のスクリーンショットです。

のOutlook Express:

enter image description here

Outlook 2010の:

enter image description here

Here's the actual EML file.

我々は、コンテンツタイプにRTFを使用して、ここで何かを間違ってやっていますか?これは過去に働いたようで、Outlook Expressで動作します。これを軽減するためにEML形式の代わりにRedemptionを使用してMSG形式に切り替えることをお勧めしましたが、OutlookまたはMAPIライブラリのユーザーマシンに前提条件を課すと考えています....しかし、EML形式が解析されない別の製品でも同じですが、おそらくMSG形式が必要です。

答えて

2

電子メールの内容が有効なrtf(マジックナンバー "{\ rtf")のように見えません。

引用符付きの印刷可能な転送エンコーディングを使用したプレーンテキストです。

content-type:text/plainを使用する必要があります。

+0

私は、この特定のEMLファイルには本文にRTFの「タグ」がないことを理解しています。私はまた、Outlook 2010でtext/plainを使用することは可能だと理解しています...しかし、アプリケーションのロジックは、RTFが含まれている場合と含まれていない場合があるため、RTFをすべて設定しています。上に示したように、Outlook Expressではこれは問題ではありませんでした。 EML本体が正しく表示されました。これは私の元の質問に戻ってきます、なぜですか?さらに、アプリケーションロジックにこの変更を加えた場合、次のOutlook(または他の電子メールアプリケーション)でこれが再び発生しますか?うまくいけば、 "なぜ"の答えがこれに対処するのだろうか。 – Biggert

+2

@Biggertアプリケーションロジックが正しくありません。送信しているメッセージがプレーンテキストの場合は、rtfのコンテンツタイプを設定しないでください。 –

+0

プレーンテキストに '{\ rtf'が含まれ、' text/rtf 'に設定されている場合はtestのような処理をしなくても、アプリケーションロジックを修正する必要があります。 。あなたのデフォルト設定がわからない場合は、rtfではなくプレーンテキストである必要があります。 – Seph

関連する問題