Wyświetlenie animowanej treści w wiadomości Email
by vbatools on Aug.31, 2011, under Outlook, Porady
W wersji >=2007, ze względu na możliwość ataków związanych z osadzeniem złośliwego kodu w plikach animowanych [GIF] producent zrezygnował z ich pokazaniem w treści wiadomości. O ile autor wiadomości będzie na liście zaufanych odbiorców obrazek wyświetli się ale ukarze tylko klatkę nr1 (bez animacji).
Aby podglądnąć wiadomość, podobnie jak to było w wersjach wcześniejszych należy wywołać procedurę przekazania jej do przeglądarki internetowej.
-
Sub Otwieraj_w_Przegladarce() 'Mod by MVP OShon from VBATools.pl Dim Konwertuj As Boolean: Konwertuj = False Dim ZamienNaHTML As Boolean: ZamienNaHTML = True Dim OutlookConvert As Boolean: OutlookConvert = True Dim WierszHTML$, objFile As Object, Zaznaczono As Outlook.Selection Dim FSO As Object, NazwaPliku As Variant Const Przegladarka$ = "C:\Program Files\Internet Explorer\iexplore.exe" 'można zmienić przeglądarkę z IE na inną. Set FSO = CreateObject("scripting.filesystemobject") Set NazwaPliku = FSO.GetSpecialFolder(2) Dim ZaznaczonaWiadomosc As MailItem Set Zaznaczono = Application.ActiveExplorer.Selection If Zaznaczono.Count = 0 Then MsgBox "Zaznacz wiadomość!", vbExclamation, "VBATools": Exit Sub ElseIf Zaznaczono.Count > 1 Then MsgBox "Zaznacz tylko jedną wiadomość!", vbExclamation, "VBATools": Exit Sub End If Set ZaznaczonaWiadomosc = Zaznaczono.item(1) If ZaznaczonaWiadomosc.BodyFormat = olFormatHTML And Konwertuj = False Then WierszHTML = ZaznaczonaWiadomosc.HTMLBody If ZamienNaHTML = False Then OutlookConvert = False Else If InStr(UCase(WierszHTML), UCase("src=""cid:")) = 0 Then OutlookConvert = False End If End If NazwaPliku = NazwaPliku & "" & "VBATools.htm" If OutlookConvert = False Then Set objFile = FSO.CreateTextFile(NazwaPliku, True) objFile.Write "" & WierszHTML objFile.Close Set objFile = Nothing Else ZaznaczonaWiadomosc.SaveAs NazwaPliku, olHTML End If Shell Przegladarka & " " & NazwaPliku, vbNormalFocus Set FSO = Nothing Set NazwaPliku = Nothing Set Zaznaczono = Nothing Set ZaznaczonaWiadomosc = Nothing End Sub
Aby czerpać większą korzyść z pow kodu, można przypisać procedurę do przycisku osadzonego w menu programu Outlook. Sposób ten opisany jest w osobnym artykule.
Rozwiązanie te zostało zapożyczone i w części nie jest moim pomysłem.
(c) Shon Oskar – www.VBATools.pl
Wszelkie prawa zastrzeżone. Żadna część ani całość tego artykułu nie może być powielana ani publikowana bez zgody autora.