Как заменить картинку в html письме

Программирование на Visual Basic for Applications
LA_
Начинающий
Начинающий
 
Сообщения: 19
Зарегистрирован: 10.10.2008 (Пт) 13:14

Как заменить картинку в html письме

Сообщение LA_ » 10.10.2008 (Пт) 13:38

Господа, есть у меня задача - в открытом html письме (только что созданном, не отправленном), найти все картинки bmp и заменить их другими картинками.
Однако команда удаления срабатывает не так, как ожидается - картинка удаляется, но вместо неё появляется крестик (который используется обычно когда объект не найден на web-странице).
Есть и другая проблема - новая картинка вставляется не на место старой (не в текст), а прикрепляется к письму отдельно.
Как эти две проблемы побороть?

Код: Выделить всё
Sub ChangePictures()
    Set objOutlook = CreateObject("Outlook.Application")
    Set objNamespace = objOutlook.GetNamespace("MAPI")
    Set objFSO = CreateObject("Scripting.FileSystemObject")
     
    ' getting current e-mail object opened
    Set objMessage = Application.ActiveInspector.CurrentItem
   
    If TypeName(objMessage) = "MailItem" Then
        intCount = objMessage.Attachments.Count
        If intCount > 0 Then
            For i = intCount To 1 Step -1 ' go from last file to the first one
                If objMessage.Attachments.Item(i).Type = 1 Then
                    sFileName = objMessage.Attachments.Item(i).FileName
                    If (Right(sFileName, 3) <> "bmp") Then ' look for bmp files only
                        Dim iPos
                        iPos = objMessage.Attachments.Item(i).Position
                        ' some changes of the picture are performed here
                        ' ...
                        objMessage.Attachments.Add "newpicture.bmp", _
                                                    olByValue, iPos
                        objMessage.Attachments.Item(i).Delete ' delete attachment
                    End If
                End If
            Next
        End If
    End If
   
End Sub

LA_
Начинающий
Начинающий
 
Сообщения: 19
Зарегистрирован: 10.10.2008 (Пт) 13:14

Re: Как заменить картинку в html письме

Сообщение LA_ » 06.01.2009 (Вт) 15:37

господа, неужели никто не знает в чем проблема?

LA_
Начинающий
Начинающий
 
Сообщения: 19
Зарегистрирован: 10.10.2008 (Пт) 13:14

Re: Как заменить картинку в html письме

Сообщение LA_ » 14.01.2009 (Ср) 10:36

нашел обсуждение аналогичной проблемы тут - viewtopic.php?f=7&t=37968
но там было найдено решение, которое мне не поможет..

может кто знает, где еще специалистов по vba можно поспрашивать? (можно и на английском)

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Re: Как заменить картинку в html письме

Сообщение RayShade » 14.01.2009 (Ср) 17:23

Давай подумаем, как меняется картинка? Ведь в теле письма скорее всего есть что то типа <img src="animage.bmp"/>, так? Ну значит, надо позаботиться не только о том, чтоб прицепить новый файл, но и еще посмотреть в bodyhtml и поменять там ссылки на картинки?
I don't understand. Sorry.


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 89

    TopList