Как выбрать подпись автоматически? - PullRequest
1 голос
/ 15 мая 2019

У меня есть несколько подписей в формате HTML. Мне нужно выбрать одну из подписей в соответствии с доменом, включенным в метку To: и CC: *

Приведенный ниже код объединяет содержимое одного файла с телом письма.

В файле подписи есть несколько изображений.

Когда я использую

Set xTextStream = xFSO.OpenTextFile(xSignatureFile)
xSignature = xTextStream.ReadAll

изображения не включены в почту.

Что я могу использовать для включения изображений в почту?

Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
Dim xMailItem As MailItem
Dim xRecipients As Recipients
Dim xRecipient As Recipient
Dim xRcpAddress As String
Dim xSignatureFile, xSignaturePath As String
Dim xFSO As Scripting.FileSystemObject
Dim xTextStream As Scripting.TextStream
Dim xSignature As String
On Error Resume Next
Set xFSO = New Scripting.FileSystemObject
If Item.Class <> olMail Then Exit Sub
Set xMailItem = Item
Set xRecipients = xMailItem.Recipients
xSignaturePath = CreateObject("WScript.Shell").SpecialFolders(5) + "\Microsoft\Signatures\"
For Each xRecipient In xRecipients
    xRcpAddress = xRecipient.Address
    Select Case xRcpAddress
        Case "Email Address 1"
            xSignatureFile = xSignaturePath & "aaa.htm"
            Exit For
        Case "Email Address 2", "Email Address 3"
            xSignatureFile = xSignaturePath & "bbb.htm"
            Exit For
        Case "Email Address 4"
            xSignatureFile = xSignaturePath & "ccc.htm"
            Exit For
    End Select
Next
Set xTextStream = xFSO.OpenTextFile(xSignatureFile)
xSignature = xTextStream.ReadAll
xMailItem.HTMLBody = xMailItem.HTMLBody & "" & xSignature & ""
End Sub

1 Ответ

1 голос
/ 19 мая 2019

Подписи вообще не отображаются в объектной модели Outlook - это ваша ответственность - проанализировать подпись HTML, выяснить используемые изображения, добавить их в качестве вложений, установить идентификатор содержимого для вложений, а затем изменить подпись.HTML для ссылки на эти изображения вложения через идентификаторы контента.Вам также необходимо объединить стили HTML существующего тела сообщения и подписи.

Если используется опция Погашение , она предоставляет RDOSignature . * 1007.*, который вставил бы данную подпись в сообщение.

...