【发布时间】:2023-03-27 21:30:01
【问题描述】:
我正在尝试使用 Windows 服务中的 Outlook 对象从收件箱中读取邮件,然后提取嵌入的图像。但是邮件中可以嵌入任何类型的图像。 Outlook API中有什么简单的方法可以保存所有嵌入的GIF格式吗?
if (newEmail.Attachments.Count > 0)
{
for (int i = 1; i <= newEmail
.Attachments.Count; i++)
{
string value = newEmail.Attachments[i].PropertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x3712001E");
if (!String.IsNullOrEmpty(value))
{
newEmail.Attachments[i].SaveAsFile
(@"C:\TestFileSave\" +
newEmail.Attachments[i].FileName);
}
}
}
【问题讨论】:
-
不,您必须对地雷类型使用二进制检测来确认附件是图像,然后将其保存为 gif。想要的功能是什么?只有图片?
-
@JeremyThompson 是的,我想保存所有嵌入的文件。我认为在大多数情况下,用户会嵌入屏幕截图等图像。一般来说,还有哪些其他文件可以嵌入到邮件中(除了图像)?
-
在 RTF 模式下,您可以放置文件,afaik 虽然它们将是附件(抱歉,我记不起上次检查的时间),我也没有看到嵌入的视频或音频剪辑。
-
请问使用模式的 GetProperty 实现了什么?只是检查嵌入的图像?顺便说一句,这是 Mime 类型检查器代码:stackoverflow.com/q/15300567/495455
-
是的。该 GetProperty 用于检查附件是嵌入的还是附加的。