smtpSocket et caractres accentus

Bonjour,

Je suis en train d’crire un petit programme qui enverrait des messages par courriel avec le socket smtp. J’ai adapt l’exemple fourni et ma grande surprise, a fonctionne…

Reste un problme : les caractres accentus se transforment en signes cabalistiques la rception. J’ai test plusieurs combinaisons avec convertencoding, sans succs.

Si quelqu’un pouvait me mettre sur la bonne piste, il mriterait trois mois et demi de gratitude.

Je suis sur OSX 10.9.4 et Xojo 2014 R2.

Gilles Rioux, Mont-Saint-Hilaire, Qubec

Il me semble que si ton message est en html, tu pourras dfinir un encodage compatible avec ton message.

Par exemple sur xojo, tu prends un “Encodings.WindowsLatin1”
Dans le le html tu mets un “”

Ou alors, aprs recherche, il te faut une partie MIME dans le message :

From: "Thomas" <thomas@serveur.fr> To: david@yahoo.fr Subject: Bonjour ! Date: Fri, 21 Sep 2012 23:31:16 +0200 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset=iso-8859-1 X-Mailer: Mozilla Thunderbird Message-Id: <20120921212116.3DF2F16A0CD@serveur.fr>

Si tes caractres accentus sont en deux, genre caractères accentués âêîôûéèç ùäëïöüÿ c’est parce ce que c’est de l’Unicode (UTF-8).

Je voulais essayer, mais je n’arrive pas faire fonctionner mon serveur SMTP.

Il me semble que pour du texte pur encodings.DosLatin1 aurait des chances de fonctionner.

[quote=114701:@Mathieu Fay]Ou alors, après recherche, il te faut une partie MIME dans le message :

From: "Thomas" <thomas@serveur.fr> To: david@yahoo.fr Subject: Bonjour ! Date: Fri, 21 Sep 2012 23:31:16 +0200 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset=iso-8859-1 X-Mailer: Mozilla Thunderbird Message-Id: <20120921212116.3DF2F16A0CD@serveur.fr>[/quote]

Pardonnez mon ignorance, mais je ne vois pas où insérer cette partie MIME dans la classe smtpSocket ou emailMessage…

Esssayez ce morceau de code…

[code] dim em as new EmailMessage

em.AddRecipient ToName.text
em.FromAddress = FromName.text.ConvertEncoding(Encodings.WindowsLatin1)
em.Subject = Subject.text.ConvertEncoding(Encodings.WindowsLatin1)
em.BodyPlainText = content.text.ConvertEncoding(Encodings.WindowsLatin1)

em.Headers.AppendHeader “Mime-Version”, “1.0”
em.Headers.AppendHeader “Content-type”, “text/plain; charset=iso-8859-1”
em.Headers.AppendHeader “Content-Transfer-Encoding”, “8bit”
em.Headers.AppendHeader “Content-Language”, “fr-FR”
em.Headers.AppendHeader “X-Mailer”, “Xojo Test Mailer”
[/code]

Merci tous. Je suis dans la bonne voie.

Russite totale !

La seule chose, j’ai converti le message en utf-8 et plac “charset=utf-8” dans l’en-tte du message. a baigne sur Mac; reste voir ce qu’en dit Windows…

Bravo !