从给定的. email文件获取附件,并将该附件用于其他邮件
本文关键字:用于 其他 email 文件 获取 | 更新日期: 2023-09-27 18:04:05
我正在c#中编写代码,但没有经历的事情是我已经在磁盘上保存了一些。eml文件,现在我正在解析每个eml文件并创建一个新邮件,将eml文件数据添加到新邮件中,但我无法将。eml文件中的附件附加到新邮件中,有人可以帮助吗?
我正在使用以下代码,但它显示了错误ex ={"该进程无法访问文件,因为它正在被另一个进程使用。'r'n":null}
foreach (CDO.IBodyPart attach in msg.Attachments)
{
i++;
string filenm = "C:''mail_automation''attachments''xyz" + i +".eml";
if (File.Exists(filenm))
{
string fn = attach.FileName;
attach.SaveToFile("C:''mail_automation''attachments''xyz" + i + ".eml");
Attachment data = new Attachment(filenm);
mailMessage.Attachments.Add(data);
}
else
{
File.Create(filenm);
string fn = attach.FileName;
attach.SaveToFile("C:''mail_automation''attachments''xyz" + i + ".eml");
Attachment data = new Attachment(filenm);
mailMessage.Attachments.Add(data);
}
您必须先提取附件并将其保存到磁盘上,然后再将其提取到新邮件中。
这里的代码示例
MailMessage message = new MailMessage();
MemoryStream ms = new MemoryStream(); //store the mail into this ms 'memory stream'
ms.Position = 0;
message.Attachments.Add(new Attachment(ms, attachmentName));