How do I add an Image in my code?

2019-09-19 09:27发布

问题:

Sub SendBirthdayMessage()
    Dim olkContacts As Outlook.Items, _
        olkContact As Object, _
        olkMsg As Outlook.MailItem
    Set olkContacts = Session.GetDefaultFolder(olFolderContacts).Items
    For Each olkContact In olkContacts
        If olkContact.Class = olContact Then
            If (Month(olkContact.Birthday) = Month(Date)) And (Day(olkContact.Birthday) = Day(Date)) Then
                Set olkMsg = Application.CreateItem(olMailItem)
                With olkMsg
                    .Recipients.Add olkContact.Email1Address
                    'Change the subject as needed'
                    .Subject = "Happy Birthday " & olkContact.FirstName
                    'Change the message as needed'
                    .HTMLBody = "ICD wanted to wish you a Happy Birthday Today!!!"
                    'Change Display to Send if you want the messages sent automatically'
                    .Send
                End With
            End If
        End If
    Next
    Set olkMsg = Nothing
    Set olkContact = Nothing
    Set olkContacts = Nothing
End Sub

回答1:

The HTML body must refer to the image through the src:cid attribute (<img src="cid:xyz">), where xyz is the value of the PR_INTERNET_CONTENT_ID property (DASL name http://schemas.microsoft.com/mapi/proptag/0x662A001F) set on attachment using Attachment.PropertyAccessor.SetProperty.