[R] _INetSmtpMail : erreur de date
Règles du forum
- Merci de consulter la section "Règles du forum" et plus particulièrement "Règles et Mentions Légales du site autoitscript.fr" avant d'écrire un message.
[R] _INetSmtpMail : erreur de date
Bonjour,
Les destinataires de mails expédiés par mes soins par la fonction _INetSmtpMail d'AutoIt me signalent que ces mails affichent des dates erronées à la réception. Année et jour sont bons, mais le mois ne correspond pas. Ainsi 30/06/2014 devient 30/03/2014
Quelle pourrait être l'origine d'un tel dysfonctionnement ? Il ne s'agit pas du serveur car mes envois par la voie normale (via mon logiciel de messagerie) sont correctement datés.
Je vous remercie de votre avis.
Les destinataires de mails expédiés par mes soins par la fonction _INetSmtpMail d'AutoIt me signalent que ces mails affichent des dates erronées à la réception. Année et jour sont bons, mais le mois ne correspond pas. Ainsi 30/06/2014 devient 30/03/2014
Quelle pourrait être l'origine d'un tel dysfonctionnement ? Il ne s'agit pas du serveur car mes envois par la voie normale (via mon logiciel de messagerie) sont correctement datés.
Je vous remercie de votre avis.
Modifié en dernier par aulus le mer. 02 juil. 2014 15:45, modifié 3 fois.
Re: [..] _INetSmtpMail : erreur de date
Bonjour,
à tout hasard
peut être une piste:
http://www.autoitscript.com/forum/topic ... d-rfc0822/
dans inet.au3, je trouve
à la ligne 145 au lieu de 175.
à tout hasard
peut être une piste:
http://www.autoitscript.com/forum/topic ... d-rfc0822/
dans inet.au3, je trouve
Code : Tout sélectionner
"Date: " & _DateDayOfWeek(@WDAY, 1) & ", " & @MDAY & " " & _DateToMonth(@MON, 1) & " " & @YEAR & " " & @HOUR & ":" & @MIN & ":" & @SEC & $bias & @CRLF & _Re: [..] _INetSmtpMail : erreur de date
Merci pour votre aide.
Je vais multiplier mes test d'envois en masse en tenant compte de votre suggestion.
A suivre...
Merci encore.
Je vais multiplier mes test d'envois en masse en tenant compte de votre suggestion.
A suivre...
Merci encore.
Modifié en dernier par aulus le mar. 01 juil. 2014 20:05, modifié 1 fois.
Re: [R] _INetSmtpMail : erreur de date
Les tests suivants n'ont malheureusement pas été concluants.
La ligne 145 du fichier INet.au3 :
modifiée en :
... ne résout pas le problème.
La date d'aujourd'hui (01 07 2014) s'affiche 01 03 2014 dans le logiciel de messagerie du destinataire.
J'ai tenté de forcer le mois de juillet des deux manières suivantes :
... ainsi que :
... rien n'y fait. Mais pourquoi donc O3 s'affiche-t-il à la place de O7 ?
La ligne 145 du fichier INet.au3 :
Code : Tout sélectionner
"Date: " & _DateDayOfWeek(@WDAY, 1) & ", " & @MDAY & " " & _DateToMonth(@MON, 1) & " " & @YEAR & " " & @HOUR & ":" & @MIN & ":" & @SEC & $bias & @CRLF & _
Code : Tout sélectionner
"Date: " & _DateDayOfWeek(@WDAY, 1) & ", " & @MDAY & " " & stringleft(_DateToMonth(@MON, 1),3) & " 20" & stringright(@YEAR, 2) & " " & @HOUR & ":" & @MIN & ":" & @SEC & $bias & @CRLF & _
La date d'aujourd'hui (01 07 2014) s'affiche 01 03 2014 dans le logiciel de messagerie du destinataire.
J'ai tenté de forcer le mois de juillet des deux manières suivantes :
Code : Tout sélectionner
Local [color=#FF0000]$Mois = 07[/color]
"Date: " & _DateDayOfWeek(@WDAY, 1) & ", " & @MDAY & " " &[color=#FF0000] $Mois[/color] & " " & @YEAR & " " & @HOUR & ":" & @MIN & ":" & @SEC & $bias & @CRLF & _
Code : Tout sélectionner
Local [color=#FF0000]$Mois =@MON[/color]
"Date: " & _DateDayOfWeek(@WDAY, 1) & ", " & @MDAY & " " &[color=#FF0000] $Mois[/color] & " " & @YEAR & " " & @HOUR & ":" & @MIN & ":" & @SEC & $bias & @CRLF & _
Re: [..] _INetSmtpMail : erreur de date
Bonsoir,
je me demande si on ne fait pas fausse piste:
Il semble que la date des messages reçu est celle de l'entête du mail champ X-ME-Date: ou Date qui est définie par le serveur SMTP.
Il faudrait récupérer un mail et regarder le code source
Si le serveur SMTP est un serveur à vous, je pense que vous avez déjà contrôlé sa date.
J'ai déjà vu sur des serveurs ayant un uptime supérieur à un mois, des pb de date.
http://autoitscript.fr/forum/viewtopic.php?f=3&t=1107
Bonne soirée
je me demande si on ne fait pas fausse piste:
Il semble que la date des messages reçu est celle de l'entête du mail champ X-ME-Date: ou Date qui est définie par le serveur SMTP.
Il faudrait récupérer un mail et regarder le code source
Si le serveur SMTP est un serveur à vous, je pense que vous avez déjà contrôlé sa date.
J'ai déjà vu sur des serveurs ayant un uptime supérieur à un mois, des pb de date.
http://autoitscript.fr/forum/viewtopic.php?f=3&t=1107
Bonne soirée
Re: [..] _INetSmtpMail : erreur de date
Bonjour,
J'ai comparé le code source d'un courriel envoyé par _INetSmtpMail (1) avec le code source d'un courriel envoyé par un logiciel de messagerie. (2)
Je note que tout au long du code (2) la référence à la date est toujours : Wed, 02 Jul 2014 09:26:22 +0200
Tandis que le code (1) affiche :
Le problème proviendrait-il de cette francisation de la date ? Cette francisation est-elle opérée par la fonction _INetSmtpMail ?
J'ai comparé le code source d'un courriel envoyé par _INetSmtpMail (1) avec le code source d'un courriel envoyé par un logiciel de messagerie. (2)
Je note que tout au long du code (2) la référence à la date est toujours : Wed, 02 Jul 2014 09:26:22 +0200
Code : Tout sélectionner
Received: from ...
Wed, 02 Jul 2014 08:49:53 +0200
...
Date: Wed, 2 [color=#FF0000]Jul[/color] 2014 08:49:53 +0200 (CEST)
Code : Tout sélectionner
Received: from ...
Wed, 2 Jul 2014 09:26:21 +0200 (CEST)
...
Date: [color=#FF0000]Mer[/color], 02 [color=#FF0000]Jull[/color] 2014 09:26:21 (+0100)
- orax
- Modérateur

- Messages : 1479
- Enregistré le : lun. 23 mars 2009 04:50
- Localisation : ::1
- Status : Hors ligne
Re: [..] _INetSmtpMail : erreur de date
Je ne sais pas d'où sortent Mer et Jull mais ce n'est pas bon. Ça doit être Wed et Jul.
Depuis la RFC :
En tout cas, cette date est juste la date de fin de création du message. Et elle peut être totalement erronée si l'utilisateur qui envoie le message n'a pas son horloge à la bonne heure/date.
C'est pourquoi je préfère trier mes messages reçus par date de réception au lieu de leur date de création.
http://abcdrfc.free.fr/rfc-vf/pdf/rfc5322.pdf
Depuis la RFC :
Code : Tout sélectionner
day-name = "Mon" / "Tue" / "Wed" / "Thu" /
"Fri" / "Sat" / "Sun"Code : Tout sélectionner
month = "Jan" / "Feb" / "Mar" / "Apr" /
"May" / "Jun" / "Jul" / "Aug" /
"Sep" / "Oct" / "Nov" / "Dec"C'est pourquoi je préfère trier mes messages reçus par date de réception au lieu de leur date de création.
https://tools.ietf.org/html/rfc5322#section-3.3http://abcdrfc.free.fr/rfc-vf/pdf/rfc5322.pdf a écrit :3.6.1
La date de création spécifie la date et l'heure à laquelle le créateur du message indique que le message a été terminé et est
prêt à passer dans le système de livraison des messages. Par exemple, cela peut être l'heure à laquelle l'utilisateur a appuyé
sur le bouton "envoi" ou "soumettre" dans un programme d’application. Dans tous les cas, il n'est précisément pas envisagé
de lui faire porter l’heure à laquelle le message a réellement été transporté, mais plutôt l'heure à laquelle l'homme ou tout
autre créateur du message l'a mis en forme finale, prêt pour le transport. (Par exemple, un utilisateur d’ordinateur portable
non connecté à un réseau peut mettre le message en file d'attente en vue de sa livraison. La date de création est destinée à
contenir la date et l'heure à laquelle le message a été mis en file d'attente, pas l'heure à laquelle l'utilisateur s'est connecté au
réseau pour l’envoi du message.)
http://abcdrfc.free.fr/rfc-vf/pdf/rfc5322.pdf
De petits détails peuvent faire toute la différence. — Quand la boule de neige commence à rouler… poussez-la. (Columbo)
Re: [..] _INetSmtpMail : erreur de date
Moi non plus !orax a écrit :Je ne sais pas d'où sortent Mer et Jull...
Après lecture de votre message, j'ai purement et simplement supprimé la ligne 145 du fichier Inet.au3.
Dans mes premiers tests, les Mer et Jull ont disparu pour laisser la place aux Wed et Jul , et les dates affichées dans les clients de messagerie des destinataires sont correctes.
Je ne comprends pas tout, mais la correction a l'air efficace.
Je mets le fil en résolu, en espérant ne pas revenir aux [..] dans les heures ou jours qui viennent !
Merci Orax de votre éclairage...
- jchd
- AutoIt MVPs (MVP)

- Messages : 2284
- Enregistré le : lun. 30 mars 2009 22:57
- Localisation : Sud-Ouest de la France (43.622788,-1.260864)
- Status : Hors ligne
Re: [R] _INetSmtpMail : erreur de date
Quelle version d'AutoIt emploies-tu ? Une version d'origine (US donc) ou une version locale ?
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
Re: [R] _INetSmtpMail : erreur de date
Bonjour jchd,
J'utilise la version v3.3.10.2
J'utilise la version v3.3.10.2
- orax
- Modérateur

- Messages : 1479
- Enregistré le : lun. 23 mars 2009 04:50
- Localisation : ::1
- Status : Hors ligne
Re: [R] _INetSmtpMail : erreur de date
Mais est-ce que c'est celle du pack FR ? Puisque je viens d'essayer avec un bout de code de Inet.au3 et je n'ai pas de problème. J'ai AutoIt 3.3.12.0 (version US officielle).
► Afficher le texte
Code : Tout sélectionner
$aSend[4] retourne :
From:Tartempion<a@a.a>
To:<a@a.a>
Subject:Sujet
Mime-Version: 1.0
Date: Wed, 02 Jul 2014 18:36:19 (+0100)
Content-Type: text/plain; charset=US-ASCIIDe petits détails peuvent faire toute la différence. — Quand la boule de neige commence à rouler… poussez-la. (Columbo)
Re: [R] _INetSmtpMail : erreur de date
Oui, c'est le pack proposé en téléchargement sur ce forum.
- Tlem
- Site Admin

- Messages : 11818
- Enregistré le : ven. 20 juil. 2007 21:00
- Localisation : Bordeaux
- Status : Hors ligne
Re: [R] _INetSmtpMail : erreur de date
@jchd et orax
Pour information, dans la dernière version du Pack AutoIt.fr (2.3.5) seul le fichier \Include\GuiMonthCal.au3 est modifié pour traduire localement le nom des jours et des mois.
Effectivement dans la 2.3.4 le fichier \Include\Date.au3 était lui aussi modifié. Je conseille donc à aulus d'installer la 2.3.5 pour voir si cela corrige son problème.
Pour information, dans la dernière version du Pack AutoIt.fr (2.3.5) seul le fichier \Include\GuiMonthCal.au3 est modifié pour traduire localement le nom des jours et des mois.
Effectivement dans la 2.3.4 le fichier \Include\Date.au3 était lui aussi modifié. Je conseille donc à aulus d'installer la 2.3.5 pour voir si cela corrige son problème.
Thierry
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Re: [R] _INetSmtpMail : erreur de date
Merci Tlem,
La version proposée à l'adresse http://www.autoitscript.fr/forum/viewto ... =22&t=2573 est-elle celle que vous conseillez ?
La version proposée à l'adresse http://www.autoitscript.fr/forum/viewto ... =22&t=2573 est-elle celle que vous conseillez ?
- Tlem
- Site Admin

- Messages : 11818
- Enregistré le : ven. 20 juil. 2007 21:00
- Localisation : Bordeaux
- Status : Hors ligne
Re: [R] _INetSmtpMail : erreur de date
Oui
Envoyé depuis mon appareil mobile.
Envoyé depuis mon appareil mobile.
Thierry
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Re: [R] _INetSmtpMail : erreur de date
Bonjour,
J'ai installé le pack français.
Pour info :
J'ai eu cet avertissement à l'installation de Scite4AutoIt3 sous Windows 7 (64 bits) :
Concernant le problème de date, celle-ci apparaît bien en anglais et est correcte à la réception des courriels. Le problème est peut-être bien résolu (je croise les doigts !)
J'ai testé la réception sous deux clients de messagerie. Le premier indique la bonne heure de l'envoi. Mais la seconde, Thunderbird, affiche une heure de plus : est-ce dû à un mauvais réglage de Thunderbird ? Et si oui, quelqu'un saurait-il où se règlent les problèmes de fuseau horaire dans ce logiciel ?
Vous remerciant pour tout.
J'ai installé le pack français.
Pour info :
J'ai eu cet avertissement à l'installation de Scite4AutoIt3 sous Windows 7 (64 bits) :
Accompagné de l'avertissement Windows :This installer requires the Autoit3 production release to be installed first.
Stopping installation
Après essai, il semble pourtant qu'il se soit bien installé !Le programme ne s'est pas installé correctement... etc.
Concernant le problème de date, celle-ci apparaît bien en anglais et est correcte à la réception des courriels. Le problème est peut-être bien résolu (je croise les doigts !)
J'ai testé la réception sous deux clients de messagerie. Le premier indique la bonne heure de l'envoi. Mais la seconde, Thunderbird, affiche une heure de plus : est-ce dû à un mauvais réglage de Thunderbird ? Et si oui, quelqu'un saurait-il où se règlent les problèmes de fuseau horaire dans ce logiciel ?
Vous remerciant pour tout.
- orax
- Modérateur

- Messages : 1479
- Enregistré le : lun. 23 mars 2009 04:50
- Localisation : ::1
- Status : Hors ligne
Re: [R] _INetSmtpMail : erreur de date
Édité : ceci est une date que j'avais générée avec l'UDF (Inet.au3 je crois) : Date: Wed, 02 Jul 2014 18:36:19 (+0100).
Sauf erreur de ma part, il n'y a pas le bon décalage horaire. Ça ne m'avait pas sauté aux yeux…
Je suppose que ça devrait être +0200 (puisque je suis en heure d'été).
Un truc à essayer :
Ligne :à changer en :
Et il y a aussi ces parenthèses autour du décalage horaire qui me semblent bizarres.
- - - - - -
Pour Thunderbird, je connais peu mais j'ai pu tester sur un poste où il est installé. Dans les colonnes Sujet, Expéditeur, … on peut ajouter deux dates : Date et Reçu. Enfin bon, ça me fait une belle jambe puisque je ne vois pas la différence entre les deux ! Les deux m'affichent la date de création du message, soit « Date: » dans l'en-tête.
Exemple, courriel écrit à 16h50 et mis en attente pour être envoyé à 17h20 ; horloge de l'ordi sur le fuseau Paris, heure d'été :Thunderbird m'affiche 16:50:00 dans les colonnes Date et Reçu.
Ça serait bien d'avoir les en-têtes d'un message envoyé via le script (Date: surtout). Ou récupère les données que le script souhaite envoyer.
Sauf erreur de ma part, il n'y a pas le bon décalage horaire. Ça ne m'avait pas sauté aux yeux…
Ligne :
Code : Tout sélectionner
Local $iBias = -$aResult[1] / 60Code : Tout sélectionner
Local $iBias = -$aResult[1] / 60 - $aResult[7] / 60- - - - - -
Tant mieux si c'est le cas mais c'est quand même étrange. À l'installation du pack, celui-ci propose de générer un fichier LOG. Ça pourrait peut-être apporter plus d'information sur l'erreur lors de l'installation.aulus a écrit :J'ai eu cet avertissement à l'installation de Scite4AutoIt3 sous Windows 7 (64 bits) :Après essai, il semble pourtant qu'il se soit bien installé !This installer requires the Autoit3 production release to be installed first.
Stopping installation
Pour Thunderbird, je connais peu mais j'ai pu tester sur un poste où il est installé. Dans les colonnes Sujet, Expéditeur, … on peut ajouter deux dates : Date et Reçu. Enfin bon, ça me fait une belle jambe puisque je ne vois pas la différence entre les deux ! Les deux m'affichent la date de création du message, soit « Date: » dans l'en-tête.
Exemple, courriel écrit à 16h50 et mis en attente pour être envoyé à 17h20 ; horloge de l'ordi sur le fuseau Paris, heure d'été :
Code : Tout sélectionner
Received: from 127.0.0.1 ([1.1.1.1])
by xxxxxxxx with ME
id xxxxxxxx; Sat, 05 Jul 2014 17:20:00 +0200
Date: Sat, 05 Jul 2014 16:50:00 +0200Ça serait bien d'avoir les en-têtes d'un message envoyé via le script (Date: surtout). Ou récupère les données que le script souhaite envoyer.
De petits détails peuvent faire toute la différence. — Quand la boule de neige commence à rouler… poussez-la. (Columbo)
Re: [R] _INetSmtpMail : erreur de date
Merci pour l'intérêt que vous portez à mes questions.
Je m'absente ce week-end : je ne pourrai avoir accès à internet que demain soir lundi pour répondre à votre prochain message éventuel.
Merci encore et bon week-end à vous.
Voici le source du courriel reçu via Thunderbird. Ce courriel a été envoyé à 7 h 45. Thunderbird affiche 8 h 45.orax a écrit : Ça serait bien d'avoir les en-têtes d'un message envoyé via le script (Date: surtout). Ou récupère les données que le script souhaite envoyer.
► Afficher le texte
Dans quel dossier se trouverait ce fichier LOG ? Je l'ai recherché sans succès.orax a écrit : À l'installation du pack, celui-ci propose de générer un fichier LOG. Ça pourrait peut-être apporter plus d'information sur l'erreur lors de l'installation.
Je m'absente ce week-end : je ne pourrai avoir accès à internet que demain soir lundi pour répondre à votre prochain message éventuel.
Merci encore et bon week-end à vous.
- orax
- Modérateur

- Messages : 1479
- Enregistré le : lun. 23 mars 2009 04:50
- Localisation : ::1
- Status : Hors ligne
Re: [R] _INetSmtpMail : erreur de date
Lors de l'installation du pack, il y a une case "Fichier .LOG" à cocher. Et il me pond un fichier "Log Pack_AutoIt.txt" sur le bureau.aulus a écrit :Dans quel dossier se trouverait ce fichier LOG ? Je l'ai recherché sans succès.
Pour le problème de date.
Dans la fonction _INetSmtpMail de l'UDF Inet.au3 il faut remplacer les lignes suivantes :
Code : Tout sélectionner
Local $iBias = -$aResult[1] / 60
par
Local $iBias = -$aResult[1] / 60 - $aResult[7] / 60
et
$iBias = StringFormat(" (%+.2d%.2d)", $iBiasH, $iBiasM)
par
$iBias = StringFormat(" %+.2d%.2d", $iBiasH, $iBiasM)avant : Date: Mon, 07 Jul 2014 02:31:29 (+0100)
après : Date: Mon, 07 Jul 2014 02:31:29 +0200
Le décalage d'une heure de l'heure d'été n'était pas ajoutée.
De plus, la zone (c.a.d. +0200) ne doit pas être entre parenthèses. Par contre il est valide d'ajouter une sorte de commentaire, entre parenthèses, après la zone.
Comme ici : Sun, 6 Jul 2014 07:45:52 +0200 (CEST)
De petits détails peuvent faire toute la différence. — Quand la boule de neige commence à rouler… poussez-la. (Columbo)
- jchd
- AutoIt MVPs (MVP)

- Messages : 2284
- Enregistré le : lun. 30 mars 2009 22:57
- Localisation : Sud-Ouest de la France (43.622788,-1.260864)
- Status : Hors ligne
Re: [R] _INetSmtpMail : erreur de date
Pour info (CEST) n'est pas un commentaire arbitraire mais le nom officiel de la zone de temps, ici "Central East Standard Time".
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.


