Indy: TidMessage supprime tous les accents, Comment désactiver cela?
Question
Je vous envoie des e-mails en utilisant les composants indy TidSMTP
et TidMessage
.
Les mails que je reçois sont sans accents.
Si je fais par exemple:
MyTIdMessage.Body.Text := 'Tèst';
Comme je reçois l'e-mail que je vois "Test" au lieu de "test"
Est-il possible de dire TIdMessage de ne pas ignorer les accents ou est-ce bug?
Note: J'utilise Indy 10.5.8.0
La solution
Assurez-vous de régler la Enconding correcte, ContentTransferEncoding et charset. Étant l'un des plus ancien protocole, le courrier est conçu pour être utilisé par les ordinateurs en utilisant seulement 7 bits et des caractères non-ASCII US a besoin de ce fait à coder. Il y a des façons différentes (cité imprimable, ecc.)
Vérifiez également l'événement OnInitializeISO.
Autres conseils
Assurez-vous de définir le jeu de caractères correct en faisant cela
MyIdMessage.CharSet := 'US-ASCII';
les valeurs de chaîne sont répertoriés dans le tableau IdCharsetNames.