sur Windows XP, j'ai un petit programme C++ qui me permet de renseigner
quelques champs, qui met à jour une base de données Access et qui doit
envoyer ensuite un mail à l'adresse saisie.
En gros il y a ça :
Curieusement, la CString g_csCmdMailto contient tout mon texte, mais à
l'arrivée le texte du mail ne contient plus le "à"... ce qui donne
"Je me tiens votre disposition".
Le "à" disparaît quelque soit l'endroit où il est situé dans la chaîne
en fait.
Je n'ai pas utilisé ça avec d'autres courrielleurs et j'ai essayé de
changer les paramètres d'encodage de Thunderbird, sans succès.
Curieusement, la CString g_csCmdMailto contient tout mon texte, mais à l'arrivée le texte du mail ne contient plus le "à"... ce qui donne "Je me tiens votre disposition". Le "à" disparaît quelque soit l'endroit où il est situé dans la chaîne en fait.
Sûrement un problème d'encodage : - En quoi est encodée ta chaîne dans ton source ? (ISO-8859, UTF-8...) - En quoi le compilateur va l'encoder dans l'exécutable ? - Il faut alors ajouter un champs dans le mail spécifiant cet encodage.
Je n'ai pas utilisé ça avec d'autres courrielleurs et j'ai essayé de changer les paramètres d'encodage de Thunderbird, sans succès.
Curieusement, la CString g_csCmdMailto contient tout mon texte, mais à
l'arrivée le texte du mail ne contient plus le "à"... ce qui donne
"Je me tiens votre disposition".
Le "à" disparaît quelque soit l'endroit où il est situé dans la chaîne
en fait.
Sûrement un problème d'encodage :
- En quoi est encodée ta chaîne dans ton source ? (ISO-8859, UTF-8...)
- En quoi le compilateur va l'encoder dans l'exécutable ?
- Il faut alors ajouter un champs dans le mail spécifiant cet encodage.
Je n'ai pas utilisé ça avec d'autres courrielleurs et j'ai essayé de
changer les paramètres d'encodage de Thunderbird, sans succès.
--
Serge http://leserged.online.fr/
Mon blog: http://cahierdesergio.free.fr/
Soutenez le libre: http://www.framasoft.org
Curieusement, la CString g_csCmdMailto contient tout mon texte, mais à l'arrivée le texte du mail ne contient plus le "à"... ce qui donne "Je me tiens votre disposition". Le "à" disparaît quelque soit l'endroit où il est situé dans la chaîne en fait.
Sûrement un problème d'encodage : - En quoi est encodée ta chaîne dans ton source ? (ISO-8859, UTF-8...) - En quoi le compilateur va l'encoder dans l'exécutable ? - Il faut alors ajouter un champs dans le mail spécifiant cet encodage.
Je n'ai pas utilisé ça avec d'autres courrielleurs et j'ai essayé de changer les paramètres d'encodage de Thunderbird, sans succès.
Le "à" disparaît quelque soit l'endroit où il est situé dans la chaîne en fait.
Le codage du caractère ne correspond probablement pas à ce qui est annoncé dans la conception du mail ou le mail conçu ne précise tout simplement pas de codage du tout.
Je n'ai pas utilisé ça avec d'autres courrielleurs et j'ai essayé de changer les paramètres d'encodage de Thunderbird, sans succès.
Il est aussi possible de coder ponctuellement des caractères en base64 mais ça peut devenir assez lourd en fonction de la fréquence d'apparition des caractères à coder.
Toute idée sera la bienvenue,
Mots clefs de recherche : content-type, charset, mime, etc.
-- Bertrand Usse
Frd a écrit :
[...]
Le "à" disparaît quelque soit l'endroit où il est situé dans la
chaîne en fait.
Le codage du caractère ne correspond probablement pas à ce qui est
annoncé dans la conception du mail ou le mail conçu ne précise tout
simplement pas de codage du tout.
Je n'ai pas utilisé ça avec d'autres courrielleurs et j'ai essayé de
changer les paramètres d'encodage de Thunderbird, sans succès.
Il est aussi possible de coder ponctuellement des caractères en base64
mais ça peut devenir assez lourd en fonction de la fréquence
d'apparition des caractères à coder.
Toute idée sera la bienvenue,
Mots clefs de recherche : content-type, charset, mime, etc.
Le "à" disparaît quelque soit l'endroit où il est situé dans la chaîne en fait.
Le codage du caractère ne correspond probablement pas à ce qui est annoncé dans la conception du mail ou le mail conçu ne précise tout simplement pas de codage du tout.
Je n'ai pas utilisé ça avec d'autres courrielleurs et j'ai essayé de changer les paramètres d'encodage de Thunderbird, sans succès.
Il est aussi possible de coder ponctuellement des caractères en base64 mais ça peut devenir assez lourd en fonction de la fréquence d'apparition des caractères à coder.
Toute idée sera la bienvenue,
Mots clefs de recherche : content-type, charset, mime, etc.
-- Bertrand Usse
Frd
Le 23/04/2014 17:31, Sergio a écrit :
Le 23/04/2014 17:02, Frd a écrit :
Bonjour,
Sûrement un problème d'encodage : - En quoi est encodée ta chaîne dans ton source ? (ISO-8859, UTF-8...)
En ISO-8859-1 sans doute...
- En quoi le compilateur va l'encoder dans l'exécutable ?
Aucune idée, c'est un programme fait avec Visual 6 et j'ai pas trouvé d'option.
- Il faut alors ajouter un champs dans le mail spécifiant cet encodage.
Genre dans la commande mailto à coté de "subjet=" et "&body=" ?
-- Fred
Le 23/04/2014 17:31, Sergio a écrit :
Le 23/04/2014 17:02, Frd a écrit :
Bonjour,
Sûrement un problème d'encodage :
- En quoi est encodée ta chaîne dans ton source ? (ISO-8859, UTF-8...)
En ISO-8859-1 sans doute...
- En quoi le compilateur va l'encoder dans l'exécutable ?
Aucune idée, c'est un programme fait avec Visual 6 et j'ai pas trouvé
d'option.
- Il faut alors ajouter un champs dans le mail spécifiant cet encodage.
Genre dans la commande mailto à coté de "subjet=" et "&body=" ?
Sûrement un problème d'encodage : - En quoi est encodée ta chaîne dans ton source ? (ISO-8859, UTF-8...)
En ISO-8859-1 sans doute...
- En quoi le compilateur va l'encoder dans l'exécutable ?
Aucune idée, c'est un programme fait avec Visual 6 et j'ai pas trouvé d'option.
- Il faut alors ajouter un champs dans le mail spécifiant cet encodage.
Genre dans la commande mailto à coté de "subjet=" et "&body=" ?
-- Fred
Frd
Le 23/04/2014 19:06, Bertrand Usse a écrit :
Frd a écrit :
[...]
Le "à" disparaît quelque soit l'endroit où il est situé dans la chaîne en fait.
Le codage du caractère ne correspond probablement pas à ce qui est annoncé dans la conception du mail ou le mail conçu ne précise tout simplement pas de codage du tout.
Curieux que les autres caractères accentués passent bien eux.
Je n'ai pas utilisé ça avec d'autres courrielleurs et j'ai essayé de changer les paramètres d'encodage de Thunderbird, sans succès.
Il est aussi possible de coder ponctuellement des caractères en base64 mais ça peut devenir assez lourd en fonction de la fréquence d'apparition des caractères à coder.
J'ai un seul "à" dans ce mail !
Toute idée sera la bienvenue,
Mots clefs de recherche : content-type, charset, mime, etc.
Yes...
Le 23/04/2014 19:06, Bertrand Usse a écrit :
Frd a écrit :
[...]
Le "à" disparaît quelque soit l'endroit où il est situé dans la
chaîne en fait.
Le codage du caractère ne correspond probablement pas à ce qui est
annoncé dans la conception du mail ou le mail conçu ne précise tout
simplement pas de codage du tout.
Curieux que les autres caractères accentués passent bien eux.
Je n'ai pas utilisé ça avec d'autres courrielleurs et j'ai essayé de
changer les paramètres d'encodage de Thunderbird, sans succès.
Il est aussi possible de coder ponctuellement des caractères en base64
mais ça peut devenir assez lourd en fonction de la fréquence
d'apparition des caractères à coder.
J'ai un seul "à" dans ce mail !
Toute idée sera la bienvenue,
Mots clefs de recherche : content-type, charset, mime, etc.
Le "à" disparaît quelque soit l'endroit où il est situé dans la chaîne en fait.
Le codage du caractère ne correspond probablement pas à ce qui est annoncé dans la conception du mail ou le mail conçu ne précise tout simplement pas de codage du tout.
Curieux que les autres caractères accentués passent bien eux.
Je n'ai pas utilisé ça avec d'autres courrielleurs et j'ai essayé de changer les paramètres d'encodage de Thunderbird, sans succès.
Il est aussi possible de coder ponctuellement des caractères en base64 mais ça peut devenir assez lourd en fonction de la fréquence d'apparition des caractères à coder.
J'ai un seul "à" dans ce mail !
Toute idée sera la bienvenue,
Mots clefs de recherche : content-type, charset, mime, etc.
Yes...
Antoine Leca
Frd écrivit :
envoyer ensuite un mail à l'adresse saisie.
<...>
static CString g_csMailFin = _T("%0aJe me tiens à votre disposition.%0a");
Curieusement, la CString g_csCmdMailto contient tout mon texte, mais à l'arrivée le texte du mail ne contient plus le "à"...
Tu encodes les sauts de ligne, en mettant %0a : c'est très bien (0A est le code pour le pseudo-caractère «newline») Mais tu dois en faire autant pour les lettres accentués (et aussi pour le caractère % lui-même, %25, et d'autres comme &,%26 ou =, %3d).
Là où cela commence à être un peu plus compliqué, c'est quand il faut décider quel codage employé pour à. En gros, il y a deux choix possibles: iso-8859-15 (celui que tu emploies pour le message où je répond), où il faut utiliser %e0; ou bien utf-8 (autrement dit Unicode, un code qui permet d'écrire dans toutes les langues et qui est donc le codage utilisé en interne par Thunderbird), où il faut utiliser %c3%a0.
Antoine
P.S.: utilise _T() partout, ou nulle part, sinon tu auras des surprises le jour où tu utiliseras UNICODE/_UNICODE...
Frd écrivit :
envoyer ensuite un mail à l'adresse saisie.
<...>
static CString g_csMailFin = _T("%0aJe me tiens à votre disposition.%0a");
Curieusement, la CString g_csCmdMailto contient tout mon texte, mais à
l'arrivée le texte du mail ne contient plus le "à"...
Tu encodes les sauts de ligne, en mettant %0a : c'est très bien
(0A est le code pour le pseudo-caractère «newline»)
Mais tu dois en faire autant pour les lettres accentués (et aussi pour
le caractère % lui-même, %25, et d'autres comme &,%26 ou =, %3d).
Là où cela commence à être un peu plus compliqué, c'est quand il faut
décider quel codage employé pour à. En gros, il y a deux choix
possibles: iso-8859-15 (celui que tu emploies pour le message où je
répond), où il faut utiliser %e0; ou bien utf-8 (autrement dit Unicode,
un code qui permet d'écrire dans toutes les langues et qui est donc le
codage utilisé en interne par Thunderbird), où il faut utiliser %c3%a0.
Antoine
P.S.: utilise _T() partout, ou nulle part, sinon tu auras des surprises
le jour où tu utiliseras UNICODE/_UNICODE...
Curieusement, la CString g_csCmdMailto contient tout mon texte, mais à l'arrivée le texte du mail ne contient plus le "à"...
Tu encodes les sauts de ligne, en mettant %0a : c'est très bien (0A est le code pour le pseudo-caractère «newline») Mais tu dois en faire autant pour les lettres accentués (et aussi pour le caractère % lui-même, %25, et d'autres comme &,%26 ou =, %3d).
Là où cela commence à être un peu plus compliqué, c'est quand il faut décider quel codage employé pour à. En gros, il y a deux choix possibles: iso-8859-15 (celui que tu emploies pour le message où je répond), où il faut utiliser %e0; ou bien utf-8 (autrement dit Unicode, un code qui permet d'écrire dans toutes les langues et qui est donc le codage utilisé en interne par Thunderbird), où il faut utiliser %c3%a0.
Antoine
P.S.: utilise _T() partout, ou nulle part, sinon tu auras des surprises le jour où tu utiliseras UNICODE/_UNICODE...
Antoine Leca
Frd écrivit :
Le 23/04/2014 19:06, Bertrand Usse a écrit :
Frd a écrit :
Le "à" disparaît quelque soit l'endroit où il est situé dans la chaîne en fait.
Le codage du caractère ne correspond probablement pas à ce qui est annoncé [...]
Curieux que les autres caractères accentués passent bien eux.
Une information qui n'est pas totalement inutile de donner au départ...
Une explication dans ce cas pourrait être que «à» est encodé (en utf-8) C3,A0 et que le A0 est «mangé» par une couche intermédiaire qui le confond avec un caractère d'espacement.
Antoine
Frd écrivit :
Le 23/04/2014 19:06, Bertrand Usse a écrit :
Frd a écrit :
Le "à" disparaît quelque soit l'endroit où il est situé dans la
chaîne en fait.
Le codage du caractère ne correspond probablement pas à ce qui est
annoncé [...]
Curieux que les autres caractères accentués passent bien eux.
Une information qui n'est pas totalement inutile de donner au départ...
Une explication dans ce cas pourrait être que «à» est encodé (en utf-8)
C3,A0 et que le A0 est «mangé» par une couche intermédiaire qui le
confond avec un caractère d'espacement.
Le "à" disparaît quelque soit l'endroit où il est situé dans la chaîne en fait.
Le codage du caractère ne correspond probablement pas à ce qui est annoncé [...]
Curieux que les autres caractères accentués passent bien eux.
Une information qui n'est pas totalement inutile de donner au départ...
Une explication dans ce cas pourrait être que «à» est encodé (en utf-8) C3,A0 et que le A0 est «mangé» par une couche intermédiaire qui le confond avec un caractère d'espacement.
Antoine
Frd
Le 25/04/2014 11:09, Antoine Leca a écrit :
Frd écrivit :
envoyer ensuite un mail à l'adresse saisie.
<...>
static CString g_csMailFin = _T("%0aJe me tiens à votre disposition.%0a");
Curieusement, la CString g_csCmdMailto contient tout mon texte, mais à l'arrivée le texte du mail ne contient plus le "à"...
Tu encodes les sauts de ligne, en mettant %0a : c'est très bien (0A est le code pour le pseudo-caractère «newline») Mais tu dois en faire autant pour les lettres accentués (et aussi pour le caractère % lui-même, %25, et d'autres comme &,%26 ou =, %3d).
Là où cela commence à être un peu plus compliqué, c'est quand il faut décider quel codage employé pour à. En gros, il y a deux choix possibles: iso-8859-15 (celui que tu emploies pour le message où je répond), où il faut utiliser %e0; ou bien utf-8 (autrement dit Unicode, un code qui permet d'écrire dans toutes les langues et qui est donc le codage utilisé en interne par Thunderbird), où il faut utiliser %c3%a0.
Merci bien pour ces pistes, que je testerai dès que possible
Antoine
P.S.: utilise _T() partout, ou nulle part, sinon tu auras des surprises le jour où tu utiliseras UNICODE/_UNICODE...
Et merci pour tes conseils.
-- Fred
Le 25/04/2014 11:09, Antoine Leca a écrit :
Frd écrivit :
envoyer ensuite un mail à l'adresse saisie.
<...>
static CString g_csMailFin = _T("%0aJe me tiens à votre disposition.%0a");
Curieusement, la CString g_csCmdMailto contient tout mon texte, mais à
l'arrivée le texte du mail ne contient plus le "à"...
Tu encodes les sauts de ligne, en mettant %0a : c'est très bien
(0A est le code pour le pseudo-caractère «newline»)
Mais tu dois en faire autant pour les lettres accentués (et aussi pour
le caractère % lui-même, %25, et d'autres comme &,%26 ou =, %3d).
Là où cela commence à être un peu plus compliqué, c'est quand il faut
décider quel codage employé pour à. En gros, il y a deux choix
possibles: iso-8859-15 (celui que tu emploies pour le message où je
répond), où il faut utiliser %e0; ou bien utf-8 (autrement dit Unicode,
un code qui permet d'écrire dans toutes les langues et qui est donc le
codage utilisé en interne par Thunderbird), où il faut utiliser %c3%a0.
Merci bien pour ces pistes, que je testerai dès que possible
Antoine
P.S.: utilise _T() partout, ou nulle part, sinon tu auras des surprises
le jour où tu utiliseras UNICODE/_UNICODE...
Curieusement, la CString g_csCmdMailto contient tout mon texte, mais à l'arrivée le texte du mail ne contient plus le "à"...
Tu encodes les sauts de ligne, en mettant %0a : c'est très bien (0A est le code pour le pseudo-caractère «newline») Mais tu dois en faire autant pour les lettres accentués (et aussi pour le caractère % lui-même, %25, et d'autres comme &,%26 ou =, %3d).
Là où cela commence à être un peu plus compliqué, c'est quand il faut décider quel codage employé pour à. En gros, il y a deux choix possibles: iso-8859-15 (celui que tu emploies pour le message où je répond), où il faut utiliser %e0; ou bien utf-8 (autrement dit Unicode, un code qui permet d'écrire dans toutes les langues et qui est donc le codage utilisé en interne par Thunderbird), où il faut utiliser %c3%a0.
Merci bien pour ces pistes, que je testerai dès que possible
Antoine
P.S.: utilise _T() partout, ou nulle part, sinon tu auras des surprises le jour où tu utiliseras UNICODE/_UNICODE...
Et merci pour tes conseils.
-- Fred
Frd
Le 25/04/2014 11:09, Antoine Leca a écrit :
Bonjour
Là où cela commence à être un peu plus compliqué, c'est quand il faut décider quel codage employé pour à. En gros, il y a deux choix possibles: iso-8859-15 (celui que tu emploies pour le message où je répond), où il faut utiliser %e0; ou bien utf-8 (autrement dit Unicode, un code qui permet d'écrire dans toutes les langues et qui est donc le codage utilisé en interne par Thunderbird), où il faut utiliser %c3%a0.
au fait... ça marche :) C'est bien le %c3%a0 qui fonctionne. J'ignore pourquoi les autres caractères accentués passent, mais voilà.
P.S.: utilise _T() partout, ou nulle part, sinon tu auras des surprises le jour où tu utiliseras UNICODE/_UNICODE...
Fait.
Merci.
Le 25/04/2014 11:09, Antoine Leca a écrit :
Bonjour
Là où cela commence à être un peu plus compliqué, c'est quand il faut
décider quel codage employé pour à. En gros, il y a deux choix
possibles: iso-8859-15 (celui que tu emploies pour le message où je
répond), où il faut utiliser %e0; ou bien utf-8 (autrement dit Unicode,
un code qui permet d'écrire dans toutes les langues et qui est donc le
codage utilisé en interne par Thunderbird), où il faut utiliser %c3%a0.
au fait...
ça marche :)
C'est bien le %c3%a0 qui fonctionne.
J'ignore pourquoi les autres caractères accentués passent, mais voilà.
P.S.: utilise _T() partout, ou nulle part, sinon tu auras des surprises
le jour où tu utiliseras UNICODE/_UNICODE...
Là où cela commence à être un peu plus compliqué, c'est quand il faut décider quel codage employé pour à. En gros, il y a deux choix possibles: iso-8859-15 (celui que tu emploies pour le message où je répond), où il faut utiliser %e0; ou bien utf-8 (autrement dit Unicode, un code qui permet d'écrire dans toutes les langues et qui est donc le codage utilisé en interne par Thunderbird), où il faut utiliser %c3%a0.
au fait... ça marche :) C'est bien le %c3%a0 qui fonctionne. J'ignore pourquoi les autres caractères accentués passent, mais voilà.
P.S.: utilise _T() partout, ou nulle part, sinon tu auras des surprises le jour où tu utiliseras UNICODE/_UNICODE...
Fait.
Merci.
Olivier Miakinen
Le 12/05/2014 17:08, Frd a écrit :
au fait... ça marche :) C'est bien le %c3%a0 qui fonctionne. J'ignore pourquoi les autres caractères accentués passent, mais voilà.
L'explication proposée Antoine Leca m'avait parue logique :
<news:ljd92m$q0a$ Une explication dans ce cas pourrait être que «à» est encodé (en utf-8) C3,A0 et que le A0 est «mangé» par une couche intermédiaire qui le confond avec un caractère d'espacement. </>
En fait j'avais pensé la même chose, mais je n'avais pas pris la peine de l'écrire puisque Antoine l'avait fait avant moi.
Le 12/05/2014 17:08, Frd a écrit :
au fait...
ça marche :)
C'est bien le %c3%a0 qui fonctionne.
J'ignore pourquoi les autres caractères accentués passent, mais voilà.
L'explication proposée Antoine Leca m'avait parue logique :
<news:ljd92m$q0a$1@shakotay.alphanet.ch>
Une explication dans ce cas pourrait être que «à» est encodé (en utf-8)
C3,A0 et que le A0 est «mangé» par une couche intermédiaire qui le
confond avec un caractère d'espacement.
</>
En fait j'avais pensé la même chose, mais je n'avais pas pris la peine
de l'écrire puisque Antoine l'avait fait avant moi.
au fait... ça marche :) C'est bien le %c3%a0 qui fonctionne. J'ignore pourquoi les autres caractères accentués passent, mais voilà.
L'explication proposée Antoine Leca m'avait parue logique :
<news:ljd92m$q0a$ Une explication dans ce cas pourrait être que «à» est encodé (en utf-8) C3,A0 et que le A0 est «mangé» par une couche intermédiaire qui le confond avec un caractère d'espacement. </>
En fait j'avais pensé la même chose, mais je n'avais pas pris la peine de l'écrire puisque Antoine l'avait fait avant moi.