Отправка отформатированного электронного письма Lotus Notes в формате Excel VBA - PullRequest
0 голосов
/ 16 июля 2010

При попытке использовать подсказки в вашем ответе на

Отправка отформатированного электронного письма Lotus Notes с расширенным текстом из Excel VBA

Я мог сделать почти все, что мне было нужно: написать несколько строк с данными из моей базы данных, отформатировать тело с помощью HTML-кода, со ссылками и форматированным текстом.

Мне также нужно поместить изображение в тело письма, но html-код "img src =" и т. Д. не работает, возможно, потому что изображение находится на моем компьютере и не достигнуто получателями. Мне нужно найти способ встроить изображение точно так же, как я бы это сделал с помощью меню Lotus. В моем итальянском Lotus Notes 7 есть меню «Создать» с параметром «Изображение», я нахожу изображение, нажимаю «ОК», и все готово.

Это то, что я хочу сделать с моим кодом, пожалуйста, скажите мне, что это возможно! : -)

Заранее спасибо.

Риккардо Балдинотти, Италия

Ответы [ 2 ]

0 голосов
/ 21 июля 2010

по адресу

http://www -10.lotus.com / LDD / nd6forum.nsf / DateAllThreadedweb / dcbf91b97004f0af8525773e002867a9? OpenDocument

Я нашел решение, и теперь в моем почтовом теле есть изображение.

Вот мой код.

Call stream.Open("<MY IMAGE PATH>")
Set body = MailDoc.CreateMIMEEntity '("memo")
Set richTextHeader = body.CreateHeader("Content-Type")
Call richTextHeader.SetHeaderVal("multipart/mixed")
Set mimeImage = body.CreateChildEntity()
strImageType = "image/jpeg" 'Other formats are "image/gif" "image/bmp"
Call mimeImage.SetContentFromBytes(stream, strImageType, ENC_IDENTITY_BINARY)
Call stream.Close

Привет

0 голосов
/ 16 июля 2010

Здесь вы можете найти полный код.Он слишком большой для вставки, поэтому я копирую несколько строк, чтобы показать идею:

  If (bSetImages) Then
        For iImageIndex = 0 To Ubound(imageFilePaths)

              ' Get the image file path and content id (cid).
              strImagePath = Trim(imageFilePaths(iImageIndex))
              If (strImagePath = "") Then Exit Sub
              strImageCid = Trim(imageContentIds(iImageIndex))
              If (strImageCid = "") Then Exit Sub

              ' Get the image context type.
              If (StrContains(strImagePath, ".", True)) Then strImageExt = Strrightback(strImagePath, ".") Else strImageExt = ""
              Select Case Lcase(strImageExt)
              Case "gif":      strImageType = "image/gif"
              Case "jpg":      strImageType = "image/jpg"
              Case Else:      strImageType = "image/gif"
              End Select

              ' Add the image part.
              Set mimeImage = mimeBody.CreateChildEntity()
              Set mimeImageHeader = mimeImage.CreateHeader({Content-ID})
              Call mimeImageHeader.SetHeaderVal("<" & strImageCid & ">")
              Call stream.Open(strImagePath)
              Call mimeImage.SetContentFromBytes(stream, strImageType & {;name="} + strImageCid + {"}, ENC_IDENTITY_BINARY)
              Call stream.Close()

        Next
  End If
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...