我想压缩Outlook Mailitem并将其添加为新邮件的附件。这是我到目前为止所得到的:
newmail.Attachments.Add(mailItem, Outlook.OlAttachmentType.olEmbeddeditem);
到目前为止测试和工作,如果我添加普通电子邮件作为附件。但是如何从MailItem创建新的ZipArchive?
尝试保存:
String savepath = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + @"\" + filename + ".msg";
mailItem.SaveAs(savepath);
FileInfo mailItemToCompress= new FileInfo(savepath);
压缩:
public void Compress(FileInfo mailItemToCompress, string compressedMailItem)
{
using (FileStream originalFileStream = mailItemToCompress.OpenRead())
{
using (FileStream compressedMailItem= File.Create(compressedMailItem)
{
using (GZipStream compressionStream = new GZipStream(compressedFileStream, CompressionMode.Compress))
{
originalFileStream.CopyTo(compressionStream);
}
}
}
}
然后附上你的mailItem:
mailItem.Attachments.Add(compressedMailItem);