2016-07-07 21 views
0

.msgから.emlへのファイル形式をAspose.Email for .NETに変換しようとしています。非常に簡単:.mslファイルAspose.Emailを使用して.emailファイルがありません。

var msg = MapiMessage.FromFile(@"example.msg"); 
MailMessageInterpretor mmi = MailMessageInterpretorFactory.Instance.GetIntepretor(msg.MessageClass); 
MailMessage eml = mmi.Interpret(msg); 
eml.Save(@"example.eml"); 

そのカレンダーが招待した場合、以下のように、私は(下の.eml、上.msg)、.msgファイルでも.emlファイルでそれを参照してください。

enter image description here

はまた.eml内の会議.icsファイルが含まれてそれが生成します。

コンテンツタイプ:テキスト/カレンダー。 method = "REQUEST"; name = "meeting.ics"; のcharset = "UTF-8" コンテンツ転送エンコード:しかしbase64で

は、問題があること、それは、会議の取り消しの代わりに、招待された場合:

enter image description here

結果.emlあなたが見ることができるように、はないは、会議の詳細が含まれない、またその結果.eml会議の痕跡を含みません(.msg存在する)。私は、簡単のため.msgを解析することができる:

MapiCalendar calendar = (MapiCalendar)msg.ToMapiMessageItem(); 

は、なぜそれがベース64にされていない得.emlでキャンセル.icsをコード?私は何か間違っているのですか? Asposeのバグですか?それは正常な行動ですか?何が起きてる?

答えて

1

あなたはAspose.Email forumで私たちとあなたの入力/出力ファイルを共有していただけますか?この問題にどのような措置をとっているのかを理解する必要があり、さらにフォーラムでお手伝いします。 APIでバグと判断された場合は、Googleのプロダクトチームによる調査のためにログに記録します。

私は、開発者エバンジェリストとしてのAsposeで動作します。

編集

mmi.InterpretAsTnef(msg)を試してみてください。 Interpretでもうまくいくはずですが、APIに問題があるようです。我々は、しかし、あなたはその間InterpretAsTnefを使用することができ、私たちの最後に問題を調査しています。 www.Aspose.comに無料で登録することができます。私たちの基本的なサポートは、有料ユーザーでも無料ユーザーでも無料です。

+0

申し訳ありませんが、フォーラムにはアカウントがありません。しかし、再生ステップは非常に簡単です。 ** 1。**誰かにExchangeで会議出席依頼を送信します。 ** 2。**その人にExchangeでの会議キャンセルを送信します。 ** 3。**その人に会議のキャンセルメールを保存させてもらいます(Exchangeでメールをダブルクリックし、ファイルに保存してから名前を付けて保存し、 '.msg'形式で保存します)。 ** 4. **上記のコードを '.msg'ファイルで' .eml'に変換すると、カレンダーのキャンセルは保持されません(* Aspose.Email *の最新バージョンでこれをテストしています) * NuGet *)。 – Alexandru

+1

InterpretAsTnefを試してください。Interpretでもうまくいくはずですが、APIに問題があるようです。我々は、しかし、あなたはその間InterpretAsTnefを使用することができ、私たちの最後に問題を調査しています。 www.Aspose.comに無料で登録することができます。私たちの基本的なサポートは、有料ユーザーでも無料ユーザーでも無料です。 –

+0

InterpretAsTnefはうまくいくようですが、ありがとうございます。 – Alexandru

関連する問題