【问题标题】:EWS (Exchange Web Services) Not Recognizing All Inline AttachmentsEWS(Exchange Web 服务)无法识别所有内联附件
【发布时间】:2015-01-28 22:51:30
【问题描述】:
我有一个程序可以连接到 Exchange 以提取电子邮件,然后将它们转换为 PDF。我遇到了内联附件的问题。当我尝试遍历附件(对于 Message.Attachments 中的每个附件作为附件)时,它经常无法识别所有内联图像。例如,我在查看邮件时可以清楚地看到有两个内联附件,但是当我循环浏览时,Message.Attachments 计数仅为 1。
我尝试将电子邮件转换为 html 并找到所有 img 标签,但我只能弄清楚如何保存来源为 URL 的标签。有些 img src 看起来像“cid:image001.jpg@01D00953.8862B450”,我不知道如何保存以便以后转换。
有什么想法吗?提前致谢!
【问题讨论】:
标签:
html-agility-pack
email-attachments
exchangewebservices
html-to-pdf
【解决方案1】:
我建议使用EWSEditor 或MFCMapi 查看消息的属性,看看这是否有助于弄清楚发生了什么。如果正文中有 cid 标签,我希望附件具有匹配的 ContentId 属性。
【解决方案2】:
如果在电子邮件中使用相同的图像(例如,作为电子邮件签名的一部分的徽标),问题最终是 cid 标签 (cid:image001.jpg@01D00953.8862B450) 是相同的。当我尝试提取 emailMessage.Attachments 时,它只会找到 1 个 unique 图像 ID,因此即使我可以清楚地看到两个,也只能看到 1 个。刚刚检查了该 ID 在 html 中出现了多少次,并在该 ID 所在的任何地方重复使用了第一张图片。