我尝试使用VBA创建带有嵌入式图形的html电子邮件。我的研究表明,我需要将我的内容类型设置为multipart / related,将图形添加为消息的一部分,为每个图形指定内容标识符(CID),然后设置每个图形的html img标签src属性to cid:theIdentifierString
任何人都有一些很好的资源如何通过VBA来实现这个脚本Outlook?
答案 0 :(得分:1)
您不能在Outlook中直接创建MIME消息 - 它不是其本机格式。例如,当它需要通过SMTP服务器发送时,它将在其onw上创建MIME消息。
话虽如此,创建一个附件并使用Attachment.PropertyAccessor设置PR_ATTACH_CONTENT_ID属性(DASL名称" http://schemas.microsoft.com/mapi/proptag/0x3712001F")。
您的HTML正文(MailItem.HTMLBody属性)需要通过cid引用该图像附件:
img src =" cid:xyz"
其中xyz是PR_ATTACH_CONTENT_ID属性的值。
查看包含OutlookSpy的现有邮件(单击IMessage按钮)。
attachment = mailitem.Attachments.Add("c:\temp\MyPicture.jpg")
attachment.PropertyAccessor.SetProperty("http://schemas.microsoft.com/mapi/proptag/0x3712001F", "MyId1")
mailitem.HTMLBody = "<html><body>Test image <img src=""cid:MyId1""></body></html>"