VBS i wysyłanie maila jako HTLM

0

Witam,

Mam problem z wysłaniem maila w formacie HTML za pomocą skryptu VBS.
Skrypt działa i wysyła maila ale przesłany mail ma rozjechane kodowanie znaków.
Tekst w wiadomości wygląda mniej więcej tak " ď>ż W zwiÄ.zku z wejĹ>ciem w ĹĽycie przepisĂłw "

Kawałek kodu, którym wskazuję plik z treścią w html, która ma być treścią wiadomości.

''' Dim shell : Set shell = CreateObject("Shell.Application")
Dim file : Set file = shell.BrowseForFolder(0, "Choose a file:", &H4000, "E:\RODO" )

Set objFile = objFSO.OpenTextFile( file.self.Path )

Set objMessage = CreateObject("CDO.Message")
objMessage.Subject = "temat"
objMessage.From = "[email protected]"
objMessage.To = "[email protected]"
objMessage.HTMLBody = objFile.ReadAll
'''vbs

0

jakie jest kodowanie pliku VBS?
I tego pliku, który wybierasz?

0

Kodowanie wybieranego pliku to UTF-8
Skrypt VBS nie jest wywoływany z pliku. Jest wywoływany w innym programie.

0

ustaw kodowanie znaków

objMessage.TextBodyPart.Charset =  "utf-8"
0

Niestety ale nadal wysyła mi krzaki.

znalazłem też coś takiego ale też nie pomogło

Set objMessage = CreateObject("CDO.Message")

With objMessage
.BodyPart.Charset = "utf-8"
End With

0

A jak masz zakodowany plik? Bo metoda OpenTextFile czyta tylko pliki ASCI (https://docs.microsoft.com/en-us/previous-versions/tn-archive/ee198708(v=technet.10)) , jeżeli kodowanie jest inne to użyj oiektu stream (https://stackoverflow.com/questions/13851473/read-utf-8-text-file-in-vbscript):

Dim objStream, strData

Set objStream = CreateObject("ADODB.Stream")

objStream.CharSet = "utf-8"
objStream.Open
objStream.LoadFromFile("C:\Users\admin\Desktop\ArtistCG\folder.txt")

strData = objStream.ReadText()

objStream.Close
Set objStream = Nothing
0

Dzięki na razie za pomoc. Jak znajdę chwilkę powalczę z tym co mi przysłałeś.
Dam znać o efektach.

Działa.
Dzięki za pomoc.

Temat do zamknięcia.

1 użytkowników online, w tym zalogowanych: 0, gości: 1