C# 从outlook保存嵌入的图像和文件
我想从outlook保存嵌入的图像。经过分析,我发现用户可以嵌入图像,也可以嵌入PDF文件等。但如果嵌入PDF或其他图像文件(在outlook中使用“插入”菜单,然后使用“对象”选项),邮件项目附件对象还包含一个.mso文件(MSO文件随电子邮件附件一起发送,其中包含允许在电子邮件中呈现附件的信息),我不确定是否需要保存该文件 1) 那么,是否需要保存或处理mso文件,或者我可以忽略它并保存所有其他文件类型 2) 根据我的观察,即使用户嵌入了pdf文件,它也会作为扩展名为.png的图像文件附加到outlook收件箱中。那么,我可以将所有这些图像转换为.gif格式,如下所示吗?它在任何情况下都会失败吗C# 从outlook保存嵌入的图像和文件,c#,email,outlook,C#,Email,Outlook,我想从outlook保存嵌入的图像。经过分析,我发现用户可以嵌入图像,也可以嵌入PDF文件等。但如果嵌入PDF或其他图像文件(在outlook中使用“插入”菜单,然后使用“对象”选项),邮件项目附件对象还包含一个.mso文件(MSO文件随电子邮件附件一起发送,其中包含允许在电子邮件中呈现附件的信息),我不确定是否需要保存该文件 1) 那么,是否需要保存或处理mso文件,或者我可以忽略它并保存所有其他文件类型 2) 根据我的观察,即使用户嵌入了pdf文件,它也会作为扩展名为.png的图像文件附加到
if (item.Attachments.Count > 0)
{
for (int j = 1; j <= item.Attachments.Count; j++)
{
string value = item.Attachments[j].PropertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x3712001E");
if (!String.IsNullOrEmpty(value))
{
index++;
string tempFilename = "C:\\TestFileSave\\" + "inlineimg_" + index.ToString() + System.IO.Path.GetExtension(item.Attachments[j].FileName);
if (System.IO.Path.GetExtension(item.Attachments[j].FileName) == "mso")
{
continue;
}
item.Attachments[j].SaveAsFile(tempFilename);
string mimeType = MimeMapping.GetMimeMapping(tempFilename);
if (mimeType.Contains("image/"))
{
System.Drawing.Image Image1 = System.Drawing.Image.FromFile(tempFilename);
Image1.Save("C:\\TestFileSave\\" + "inlineimg_" + index.ToString() + ".gif", System.Drawing.Imaging.ImageFormat.Gif);
Image1.Dispose();
System.IO.File.Delete(tempFilename);
}
}
}
}
if(item.Attachments.Count>0)
{
for(int j=1;j MSO fiel格式没有文档记录。我询问了MS dev支持人员关于打开其格式的问题,但他们告诉我,他们没有这样做的计划。那么,它们是否由outlook内部使用,而不是由用户使用?