OVH Cloud OVH Cloud

Bug sur les fn d'envoi de mail Windev

16 réponses
Avatar
Roumegou Eric
Bonjour,
J'ai relevé ce pb auprès du ST il y a longtemps déjà, et ils
m'affirment ne pas le constater.
Je viens encore de faire des tests avec 2 de mes serveurs de mails
(merak et hmailserver) et 2 autre serveurs smtp externes (wanadoo et
liberty surf) et je constate toujours ce pb (en WD11, WD12, WB11 et
surement WB12).

Le probleme est le suivant. Si j'envoie un mail avec les fn EmailEnvoie
du WDlangage en mettant des accents dans l'objet du message.

sur un compte que je vais chercher en IMAP, j'ai bien les accents
sur un compte que je vais chercher en POP, je n'ais pas les accents.

Dans le corps du message, il n'y a pas de pb, seul l'objet et en POP
seulement pose pb.
Nous avons essayé avec plusieurs comptes courriers (internes ou des
fournisseurs comme wanadoo et liberty surf, sur différentes machines
etc ...)

Merci de me dire si vous rencontrez le pb.

ou envoyez moi svp depuis une de vos applis (avec des accents dans
l'objet du msg) un message à l'adresse suivante

roumegou@nospamzone-franche.net (enlever nospam).

je voudrais les relancer car je ne comprends pas comment on n'arrive
pas à reproduire ce pb.
MErci d'avance

--
Eric Roumégou
Webmaster des wtablettes
http://cerbermail.com/?qE7t4Qvilo
(cliquez sur le lien ci-dessus pour me contacter en privé)

6 réponses

1 2
Avatar
Eric Demeester
dans (in) fr.comp.developpement.agl.windev, Roumegou Eric
ecrivait (wrote) :

Bonjour Eric,

> Le probleme est le suivant. Si j'envoie un mail avec les fn EmailEnvoie du
> WDlangage en mettant des accents dans l'objet du message.
>
> sur un compte que je vais chercher en IMAP, j'ai bien les accents
> sur un compte que je vais chercher en POP, je n'ais pas les accents.
>
> Dans le corps du message, il n'y a pas de pb, seul l'objet et en POP
> seulement pose pb.



Logique. C'est dans les en-têtes du message qu'est décrit le jeu de
caractère utilisé et l'encodage, par exemple :

Content-Type: text/plain; charset="iso-8859-15";
Content-Transfer-Encoding: 8bit

Ces informations ne s'appliquent pas au champ « subject: », mais
uniquement au corps du message.

Cela peut se paramétrer sur le client de messagerie.



Oui.

Par ex sur Thunderbird, Outils/Option cliquer sur le btn Polices ds
Police et encodage
Dans Encodage des carctères mettre Occidental ISO-8859
et cocher Appliquer l'encodage à tous les msg entrants.



Oui.

OKAY mais là je dis ; je ne vais pas modifier toutes les messageries de
mes destinataires.



Non, d'autant moins que ces messageries n'utilisent pas forcément les
mêmes jeux de caractères par défaut. C'est en lisant les champs
d'en-tête que le logiciel de messagerie sait quel est le jeu de
caractère et l'encodage utilisé dans le corps du message, MAIS cela ne
présume pas de la façon dont le champ subject est encodé pour la raison
suivante :

Les RFC précisent quels champs d'en-tête doivent figurer, mais pas dans
quel ordre. Le champ subject peut donc être AVANT les déclarations du
jeu de caractères et de l'encodage, et comme le client de messagerie lit
les champs d'en-tête séquentiellement...

Et donc il est possible de forcer l'encodage dès l'émission. Un message



L'encodage et le jeu de caractères. On les fait figurer directement dans
le champ sujet pour la raison expliquée ci-dessus.

envoyé avec Thunderbird donnerait cela
Subject: C'est =?ISO-8859-1?Q?l'été_en_août_ça_c'est_? > =?ISO-8859-1?Q?sûr? > lisez : c'est l'été en août ça c'est sûr



Voyons de plus près ce que ça signifie.

Les caractères "=?" et "?=" sont les délimiteurs indiquant que le
contenu est encodé.

"ISO-8859-1" (ou latin1) est le jeu de caractères.
"?Q?" indique que les caractères accentués (la table « étendue ») sont
encodés en quoted printable (ce qui revient à remplacer le caractère par
sa valeur en hexadécimal en le faisant précéder du signe "=", ^par
exemple :

é -> é
ç -> ç
etc.

Donc CQFD : il manque une fonction à WD pour faire cela (où alors je ne
l'ai pas vue)



Oui et non, car rien n'oblige dans les RFC à prévoir l'encodage des
caractères accentués dans les en-têtes en général, et dans le champ
subject en particulier. Il arrive même que cet encodage ne soit pas le
fait du logiciel émettant le courrier, mais celui d'un serveur
intermédiaire transportant le message.

L'idéal est de ne pas mettre de caractères accentués dans l'objet d'un
message :)

--
Eric
Avatar
Roumegou Eric
Eric Demeester a formulé ce vendredi :
dans (in) fr.comp.developpement.agl.windev, Roumegou Eric
ecrivait (wrote) :

Bonjour Eric,

Le probleme est le suivant. Si j'envoie un mail avec les fn EmailEnvoie du
WDlangage en mettant des accents dans l'objet du message.

sur un compte que je vais chercher en IMAP, j'ai bien les accents
sur un compte que je vais chercher en POP, je n'ais pas les accents.

Dans le corps du message, il n'y a pas de pb, seul l'objet et en POP
seulement pose pb.





Logique. C'est dans les en-têtes du message qu'est décrit le jeu de
caractère utilisé et l'encodage, par exemple :

Content-Type: text/plain; charset="iso-8859-15";
Content-Transfer-Encoding: 8bit

Ces informations ne s'appliquent pas au champ « subject: », mais
uniquement au corps du message.

Cela peut se paramétrer sur le client de messagerie.



Oui.

Par ex sur Thunderbird, Outils/Option cliquer sur le btn Polices ds
Police et encodage
Dans Encodage des carctères mettre Occidental ISO-8859
et cocher Appliquer l'encodage à tous les msg entrants.



Oui.

OKAY mais là je dis ; je ne vais pas modifier toutes les messageries de
mes destinataires.



Non, d'autant moins que ces messageries n'utilisent pas forcément les
mêmes jeux de caractères par défaut. C'est en lisant les champs
d'en-tête que le logiciel de messagerie sait quel est le jeu de
caractère et l'encodage utilisé dans le corps du message, MAIS cela ne
présume pas de la façon dont le champ subject est encodé pour la raison
suivante :

Les RFC précisent quels champs d'en-tête doivent figurer, mais pas dans
quel ordre. Le champ subject peut donc être AVANT les déclarations du
jeu de caractères et de l'encodage, et comme le client de messagerie lit
les champs d'en-tête séquentiellement...

Et donc il est possible de forcer l'encodage dès l'émission. Un message



L'encodage et le jeu de caractères. On les fait figurer directement dans
le champ sujet pour la raison expliquée ci-dessus.

envoyé avec Thunderbird donnerait cela
Subject: C'est =?ISO-8859-1?Q?l'été_en_août_ça_c'est_? >> =?ISO-8859-1?Q?sûr? >> lisez : c'est l'été en août ça c'est sûr



Voyons de plus près ce que ça signifie.

Les caractères "=?" et "?=" sont les délimiteurs indiquant que le
contenu est encodé.

"ISO-8859-1" (ou latin1) est le jeu de caractères.
"?Q?" indique que les caractères accentués (la table « étendue ») sont
encodés en quoted printable (ce qui revient à remplacer le caractère par
sa valeur en hexadécimal en le faisant précéder du signe "=", ^par
exemple :

é -> é
ç -> ç
etc.

Donc CQFD : il manque une fonction à WD pour faire cela (où alors je ne
l'ai pas vue)



Oui et non, car rien n'oblige dans les RFC à prévoir l'encodage des
caractères accentués dans les en-têtes en général, et dans le champ
subject en particulier. Il arrive même que cet encodage ne soit pas le
fait du logiciel émettant le courrier, mais celui d'un serveur
intermédiaire transportant le message.

L'idéal est de ne pas mettre de caractères accentués dans l'objet d'un
message :)



Merci Eric pour toutes ces précisions.
(A part ta conclusion qui ne cadre pas avec mon activité liée à la
comm)

Je suis le premier à gueuler quand Pcsoft nous met des accents dans les
noms de fichiers, dans les variables etc ... mais hors de
l'informatique pûre, j'estime que ce qui est à destination des
utilisateurs doit être écrit correctement.

Pour l'instant le ST ne semble pas prendre cela pour un
dysfonctionnement. Moi je me dis qu'envoyer des mails entâchés
d'erreurs en est un sérieux.

Je viens de faire le tour des quelques mails commerciaux que je reçois,
et je vois bien qu'ils prennent la peine d'encoder le sujet.

Donc me reste plus qu'a développer une routine pour encoder cela.

--
Eric Roumégou
Webmaster des wtablettes
http://cerbermail.com/?qE7t4Qvilo
(cliquez sur le lien ci-dessus pour me contacter en privé)
Avatar
Eric Demeester
dans (in) fr.comp.developpement.agl.windev, Roumegou Eric
ecrivait (wrote) :

Salut Éric,

Je suis le premier à gueuler quand Pcsoft nous met des accents dans les
noms de fichiers, dans les variables etc ... mais hors de
l'informatique pûre, j'estime que ce qui est à destination des
utilisateurs doit être écrit correctement.



Le problème est qu'on peut considérer les en-têtes d'un mail comme de
l'informatique pure, et que comme le protocole est d'origine
anglo-saxonne, les caractères accentués sont passés à la trappe dans la
bataille...

Pour l'instant le ST ne semble pas prendre cela pour un
dysfonctionnement. Moi je me dis qu'envoyer des mails entâchés
d'erreurs en est un sérieux.

Je viens de faire le tour des quelques mails commerciaux que je reçois,
et je vois bien qu'ils prennent la peine d'encoder le sujet.



Tous les bons logiciels de mail le font, et même quelques mauvais, c'est
un fait.

Donc me reste plus qu'a développer une routine pour encoder cela.



Si tu veux, envoie-moi un mail depuis Windev (mon adresse est valide)
avec des caractères accentués dans l'objet, je regarderai les en-têtes
et je pourrai peut-être te donner quelques précisions utiles.

--
Eric
Avatar
Roumegou Eric
Eric Demeester avait énoncé :


Si tu veux, envoie-moi un mail depuis Windev (mon adresse est valide)
avec des caractères accentués dans l'objet, je regarderai les en-têtes
et je pourrai peut-être te donner quelques précisions utiles.



Un mail est parti depuis une de mes applis WD.
Merci de ton aide.

--
Eric Roumégou
Webmaster des wtablettes
http://cerbermail.com/?qE7t4Qvilo
(cliquez sur le lien ci-dessus pour me contacter en privé)
Avatar
Eric Demeester
dans (in) fr.comp.developpement.agl.windev, Roumegou Eric
ecrivait (wrote) :

Bonsoir Éric,

> Si tu veux, envoie-moi un mail depuis Windev (mon adresse est valide)



Un mail est parti depuis une de mes applis WD.



Je l'ai reçu à l'instant (mon système antispam ne connaissant pas
l'expéditeur, il a envoyé un message d'erreur temporaire invitant le
serveur d'envoi à réexpédier son message, ce qui a été fait).

Voici ce que j'ai reçu dans les en-têtes (je masque volontairement les
informations « personnelles » :

FROM:
Subject: Pour Test : C'est l'été en Août, ça c'est sûr !



Surprise, le sujet n'est _pas_ encodé et mon logiciel de courrier le lit
sans problème.

TO: eric+



C'est l'adresse mail valide que j'utilise sur Usenet.

Mime-Version: 1.0



On constate que le logiciel émetteur envoie bien le bon type MIME. Le
type MIME n'est pas utile si on n'envoie pas de pièces jointes. Dans le
cas contraire, il indique au logiciel qui va recevoir le courrier
comment les pièces jointes sont encodées.

Content-Type: text/plain;
charset=iso-8859-1



La disposition de ces deux champs est typique d'Outlook / OE. Les autres
logiciels présentent ces deux informations sur une seule ligne, genre :

Content-Type: text/plain; charset="iso-8859-1"



On peut en déduire (mais on le savait déjà) que les fonctions mail de
Windev font appel directement aux API Windows concernant Outlook et OE,
ce qui est certes plus facile pour les développeurs de Windev, mais pas
forcément adéquat dans tous les cas.

Suivre les RFC plutôt que de s'appuyer sur les solutions Microsoft sans
comprendre comment ça marche pourrait éviter nombre de dégâts
collatéraux, mais visiblement, c'est une question de « culture
d'entreprise », et ce n'est pas gagné.

Content-Transfer-Encoding: 8bit



Là c'est très bien, et ça explique qu'aucun encodage n'ait été
nécessaire chez moi pour afficher le sujet de ton message.

Je sais que ça ne répond pas à ta question qui est de savoir pourquoi
certains de tes correspondants reçoivent un champ sujet illisible.

Je ne peux que te répéter ce que je t'ai déjà dit : l'encodage des
en-têtes ne concerne pas forcément la façon dont les caractères
accentués sont interprétés par ton logiciel Windev, ni de leur
interprétation par le serveur d'envoi. Ils peuvent être réencodés à la
volée lors du transport du courrier, voire par le serveur de
destination.

En d'autres termes, je ne suis pas certain que développer des fonctions
spécifiques d'encodage du sujet des mails soit utile, ni que Windev soit
le coupable. Mais je manque d'éléments pour être affirmatif

Bon courage.

--
Eric
Avatar
Roumegou Eric
Il se trouve que Eric Demeester a formulé :
dans (in) fr.comp.developpement.agl.windev, Roumegou Eric
ecrivait (wrote) :

Bonsoir Éric,

Si tu veux, envoie-moi un mail depuis Windev (mon adresse est valide)





Un mail est parti depuis une de mes applis WD.



Je l'ai reçu à l'instant (mon système antispam ne connaissant pas
l'expéditeur, il a envoyé un message d'erreur temporaire invitant le
serveur d'envoi à réexpédier son message, ce qui a été fait).

Voici ce que j'ai reçu dans les en-têtes (je masque volontairement les
informations « personnelles » :

FROM:
Subject: Pour Test : C'est l'été en Août, ça c'est sûr !



Surprise, le sujet n'est _pas_ encodé et mon logiciel de courrier le lit
sans problème.


Ce que j'ai constaté, c'est que cela dépendait du client effectivement.
S'il est en IMAP, pas de problèmes.
S'il est en POP, alors il faut qu'il soit configuré pour appliquer un
ISO 8859-1 aux messages entrants.
(Cela ne semble pas être la config par défaut d'un thunderbid par
exemple)





[CUT]


Je ne peux que te répéter ce que je t'ai déjà dit : l'encodage des
en-têtes ne concerne pas forcément la façon dont les caractères
accentués sont interprétés par ton logiciel Windev, ni de leur
interprétation par le serveur d'envoi. Ils peuvent être réencodés à la
volée lors du transport du courrier, voire par le serveur de
destination.

En d'autres termes, je ne suis pas certain que développer des fonctions
spécifiques d'encodage du sujet des mails soit utile, ni que Windev soit
le coupable. Mais je manque d'éléments pour être affirmatif



moi je m'en tiens à ce que j'ai constaté sur les produits de
messagerie. S'ils veulent éviter ces problèmes, ils encodent le sujet.
Ma seule question est : un sujet encodé comme vu précedemmment
(encodage + caractères accentués en Hexa) sera-t-il bien interprêté par
tous les clients de messageries ?



Bon courage.



Merci,
je vais faire une pause là dessus, mais je compte bien y revenir.

--
Eric Roumégou
Webmaster des wtablettes
http://cerbermail.com/?qE7t4Qvilo
(cliquez sur le lien ci-dessus pour me contacter en privé)
1 2