0
我正在使用C#/ Visual Studio 2012創建一個電子郵件過程,用於回覆電子郵件的發件人原始電子郵件作爲附件。在處理他們發送的電子郵件時發生錯誤時,我會這樣做。我正在使用庫存.NET System.Net.Mail.MailMessage
和System.Net.Mail.SmtpClient
。試圖創建一個電子郵件過程,收到一封電子郵件並回復發件人,並附上作爲附件發送的電子郵件
我把原來的郵件EML,並構建一個MemoryStream與電子郵件EML的內容:
memStream = new MemoryStream(Encoding.ASCII.GetBytes(exception.EmailEml));
memStream.Seek(0, SeekOrigin.Begin);
我再構建一個電子郵件,嘗試添加附件如下:
message.Attachments.Add(new Attachment(contentStream,
System.Net.Mime.MediaTypeNames.Text.Plain));
message.Attachments[0].Name = subject + ".msg";
在Outlook中,我將郵件視爲附件,但Outlook無法打開附件。我從Outlook中收到錯誤...
難道這僅僅是設置正確的MIME類型的問題,以便.MSG附件在Outlook中打開,還是我需要做的其他事情?
當我回顧一個文本編輯器中的.msg附件,我看到在標題下面:
Received: from server.com ([___]) by
server.com ([___]) with mapi id
___; Mon, 25 Mar 2013 23:00:20 -0400
From: Me <myemailaddy>
To: Server Side Mailbox Process <processemailaddy>
Subject: subject text
Thread-Topic: Topic text
Thread-Index: Ac4pzgz84kK07LIdQ+uIR67iWBoSxw==
Date: Mon, 25 Mar 2013 23:00:20 -0400
Message-ID:
<[email protected]>
Accept-Language: en-US
Content-Language: en-US
X-MS-Exchange-Organization-AuthAs: Internal
X-MS-Exchange-Organization-AuthMechanism: 04
X-MS-Exchange-Organization-AuthSource: server.com
X-MS-Has-Attach:
X-MS-Exchange-Organization-SCL: -1
X-MS-TNEF-Correlator:
Content-Type: text/html; charset="us-ascii"
MIME-Version: 1.0
謝謝!
你用什麼API發送消息?我看到你引用了「Outlook」,但各種API可以在Windows中使用默認的電子郵件客戶端。 – jay
嗨Jay,我正在使用System.Net.Mail.MailMessage和System.Net.Mail.SmtpClient –
我發現我的附件是eml格式的......按照我的答案。所以沒有必要進一步調查這個,謝謝! –