Il y a un autre souvenir qui me revient : Les fichiers les plus anciens ne sont pas datés de la même façon. Je crois que l'heure disparaît lorsque l'ancienneté excède l'année. Essayez "ls -l" ou "ls -t" pour voir. Yves
Il y a un autre souvenir qui me revient :
Les fichiers les plus anciens ne sont pas datés de la même façon. Je crois
que l'heure disparaît lorsque l'ancienneté excède l'année.
Essayez "ls -l" ou "ls -t" pour voir.
Yves
Il y a un autre souvenir qui me revient : Les fichiers les plus anciens ne sont pas datés de la même façon. Je crois que l'heure disparaît lorsque l'ancienneté excède l'année. Essayez "ls -l" ou "ls -t" pour voir. Yves
PendLoup
effectivement, on constate que les fichiers qui ont une date sont antèrieurs à 2005. Par contre ça veut dire que la fonction FtpFindFirstFile() se trompe, car elle me donne 2004 au lieu de 2005.
Merci. Pendloup. -- Enlevez NoSpam de mon adresse pour me répondre
effectivement, on constate que les fichiers qui ont une date sont antèrieurs
à 2005. Par contre ça veut dire que la fonction FtpFindFirstFile() se
trompe, car elle me donne 2004 au lieu de 2005.
Merci.
Pendloup.
--
Enlevez NoSpam de mon adresse pour me répondre
effectivement, on constate que les fichiers qui ont une date sont antèrieurs à 2005. Par contre ça veut dire que la fonction FtpFindFirstFile() se trompe, car elle me donne 2004 au lieu de 2005.
Merci. Pendloup. -- Enlevez NoSpam de mon adresse pour me répondre
Cyrille Szymanski
"PendLoup" wrote in news:dc7a55$6d0$:
Moi aussi, mais à d'autres moments de la journée , j'obtiens la bonne date et la bonne heure pour un même fichier. Je pense que le pb vient donc de FtpFindFirstFile .
Non pas du tout, le problème ne vient pas de FtpFindFirstFile(), WinInet ou quoi que ce soit d'autre. Encore une fois, FTP ne permet pas d'obtenir de façon fiable les dates/heures et vous n'y pouvez absolument rien. Vous avez vous-même cité ce point.
En général, en réponse à une commande LIST une implémentation de serveur FTP renvoie le résultat d'une commande "dir" ou "ls" dont le format dépend largement du système.
1. Comparer l'heure locale à celle d'un serveur pour en déduire des choses est en général une très mauvaise idée car les horloges n'ont aucune raison d'être synchronisées.
2. Il existe déjà des protocoles de synchronisation de fichiers, tels rsync, cvsup... Ils ont l'avantage d'être incrémentaux et optionnellement compressés. Il est probablement inutile de réinventer la roue.
3. Dans une certaine mesure, le protocole HTTP permet d'obtenir des infos fiables.
4. En dernier recours vous pouvez toujours trouver une paire API client FTP / version serveur FTP qui garantisse l'exactitude des résultats et décider de ne supporter que cette configuation.
Perso je choisirais la solution 2.
-- Cyrille Szymanski
"PendLoup" <f.dulou@NoSpamcaramail.com> wrote in
news:dc7a55$6d0$1@news1.completel.net:
Moi aussi, mais à d'autres moments de la journée , j'obtiens la
bonne date
et la bonne heure pour un même fichier. Je pense que le pb vient donc
de FtpFindFirstFile .
Non pas du tout, le problème ne vient pas de FtpFindFirstFile(), WinInet
ou quoi que ce soit d'autre. Encore une fois, FTP ne permet pas d'obtenir
de façon fiable les dates/heures et vous n'y pouvez absolument rien. Vous
avez vous-même cité ce point.
En général, en réponse à une commande LIST une implémentation de serveur
FTP renvoie le résultat d'une commande "dir" ou "ls" dont le format
dépend largement du système.
1. Comparer l'heure locale à celle d'un serveur pour en déduire des
choses est en général une très mauvaise idée car les horloges n'ont
aucune raison d'être synchronisées.
2. Il existe déjà des protocoles de synchronisation de fichiers, tels
rsync, cvsup... Ils ont l'avantage d'être incrémentaux et optionnellement
compressés. Il est probablement inutile de réinventer la roue.
3. Dans une certaine mesure, le protocole HTTP permet d'obtenir des infos
fiables.
4. En dernier recours vous pouvez toujours trouver une paire API client
FTP / version serveur FTP qui garantisse l'exactitude des résultats et
décider de ne supporter que cette configuation.
Moi aussi, mais à d'autres moments de la journée , j'obtiens la bonne date et la bonne heure pour un même fichier. Je pense que le pb vient donc de FtpFindFirstFile .
Non pas du tout, le problème ne vient pas de FtpFindFirstFile(), WinInet ou quoi que ce soit d'autre. Encore une fois, FTP ne permet pas d'obtenir de façon fiable les dates/heures et vous n'y pouvez absolument rien. Vous avez vous-même cité ce point.
En général, en réponse à une commande LIST une implémentation de serveur FTP renvoie le résultat d'une commande "dir" ou "ls" dont le format dépend largement du système.
1. Comparer l'heure locale à celle d'un serveur pour en déduire des choses est en général une très mauvaise idée car les horloges n'ont aucune raison d'être synchronisées.
2. Il existe déjà des protocoles de synchronisation de fichiers, tels rsync, cvsup... Ils ont l'avantage d'être incrémentaux et optionnellement compressés. Il est probablement inutile de réinventer la roue.
3. Dans une certaine mesure, le protocole HTTP permet d'obtenir des infos fiables.
4. En dernier recours vous pouvez toujours trouver une paire API client FTP / version serveur FTP qui garantisse l'exactitude des résultats et décider de ne supporter que cette configuation.
Perso je choisirais la solution 2.
-- Cyrille Szymanski
Christian ASTOR
Cyrille Szymanski wrote:
> Non pas du tout, le problème ne vient pas de FtpFindFirstFile(), WinInet
ou quoi que ce soit d'autre.
Sûr ?
KB284455, voire KB306587 CE ?
Cyrille Szymanski wrote:
> Non pas du tout, le problème ne vient pas de FtpFindFirstFile(),
WinInet
> Non pas du tout, le problème ne vient pas de FtpFindFirstFile(), WinInet
ou quoi que ce soit d'autre.
Sûr ?
KB284455, voire KB306587 CE ?
Pendloup
Bonjour,
Bon, avec votre aide et à force de chercher, les choses sont plus claires maintenant. J'ai bien compris comment ftp donne les dates en fonction du fait que le fichier est de l'annnée en cours ou pas. Pour les fichiers de l'année, wininet calcule bien 2005 pour les fichiers n'ayant pas l'année et antèrieurs à la date courante. Mon pb vient du fait que j'ai 2 heures de décalage entre le serveur et l'heure que considère wininet. Ce qui fait que les fichiers se trouvant dans ces 2 heures sont considérés comme étant de 2004. Si j'attends que les 2 heures passent il sont bien datés de 2005. Me reste plus qu' à comprendre d'où viennent ces 2 heures.
Merci à vous.
Pendloup.
Bonjour,
Bon, avec votre aide et à force de chercher, les choses sont plus
claires maintenant. J'ai bien compris comment ftp donne les dates en
fonction du fait que le fichier est de l'annnée en cours ou pas.
Pour les fichiers de l'année, wininet calcule bien 2005 pour les
fichiers n'ayant pas l'année et antèrieurs à la date courante.
Mon pb vient du fait que j'ai 2 heures de décalage entre le serveur
et l'heure que considère wininet. Ce qui fait que les fichiers se
trouvant dans ces 2 heures sont considérés comme étant de 2004. Si
j'attends que les 2 heures passent il sont bien datés de 2005.
Me reste plus qu' à comprendre d'où viennent ces 2 heures.
Bon, avec votre aide et à force de chercher, les choses sont plus claires maintenant. J'ai bien compris comment ftp donne les dates en fonction du fait que le fichier est de l'annnée en cours ou pas. Pour les fichiers de l'année, wininet calcule bien 2005 pour les fichiers n'ayant pas l'année et antèrieurs à la date courante. Mon pb vient du fait que j'ai 2 heures de décalage entre le serveur et l'heure que considère wininet. Ce qui fait que les fichiers se trouvant dans ces 2 heures sont considérés comme étant de 2004. Si j'attends que les 2 heures passent il sont bien datés de 2005. Me reste plus qu' à comprendre d'où viennent ces 2 heures.
Merci à vous.
Pendloup.
Pendloup
C'est encore moi !
Bon j'ai toujours ce pb de 2 heures. J'explique :
Pour tout fichier se trouvant dans un intervale de 2h par rapport à l'heure courante de mon PC, Wininet trouve une heure supèrieure d'au plus 2 heures à l'heure courante, et donc en déduit qu 'il est de 2004.
Pax ex. , soit toto.jpg sur le serveur avec le date 28 Juillet 13:15. Il est 13:20 sur mon PC. Wininet me retourne 28/07/2004 13:15. Si j'avance mon PC de 2 heure, soit 15:20, Wininet me retourne 28/07/2005 13:15.
J'ai essayé de modifier la variable _timezone, ça ne change rien. Or quand j'appelle FtpFindFirstFile() je n'ai fait encore aucune conversion type localtime.
Une solution serait d'attendre 2 heure pour refaire une mise à jour du serveur, et c'est ce qui se passera généralement, mais tout de même ce n'est pas terrible.
J'aurai aimé tester la fonction FtpCommand(), mais elle n'est dispo que pour windows CE. Y a t'il une autre fonction que je puisse utiliser pour envoyer moi-même une commande ftp ?
Merci de m'aider encore, je suis coincé.
Pendloup.
C'est encore moi !
Bon j'ai toujours ce pb de 2 heures.
J'explique :
Pour tout fichier se trouvant dans un intervale de 2h par rapport à
l'heure courante de mon PC, Wininet trouve une heure supèrieure d'au
plus 2 heures à l'heure courante, et donc en déduit qu 'il est de
2004.
Pax ex. , soit toto.jpg sur le serveur avec le date 28 Juillet 13:15.
Il est 13:20 sur mon PC. Wininet me retourne 28/07/2004 13:15.
Si j'avance mon PC de 2 heure, soit 15:20, Wininet me retourne
28/07/2005 13:15.
J'ai essayé de modifier la variable _timezone, ça ne change rien.
Or quand j'appelle FtpFindFirstFile() je n'ai fait encore aucune
conversion type localtime.
Une solution serait d'attendre 2 heure pour refaire une mise à jour
du serveur, et c'est ce qui se passera généralement, mais tout de
même
ce n'est pas terrible.
J'aurai aimé tester la fonction FtpCommand(), mais elle n'est dispo
que pour windows CE. Y a t'il une autre fonction que je puisse utiliser
pour envoyer moi-même une commande ftp ?
Pour tout fichier se trouvant dans un intervale de 2h par rapport à l'heure courante de mon PC, Wininet trouve une heure supèrieure d'au plus 2 heures à l'heure courante, et donc en déduit qu 'il est de 2004.
Pax ex. , soit toto.jpg sur le serveur avec le date 28 Juillet 13:15. Il est 13:20 sur mon PC. Wininet me retourne 28/07/2004 13:15. Si j'avance mon PC de 2 heure, soit 15:20, Wininet me retourne 28/07/2005 13:15.
J'ai essayé de modifier la variable _timezone, ça ne change rien. Or quand j'appelle FtpFindFirstFile() je n'ai fait encore aucune conversion type localtime.
Une solution serait d'attendre 2 heure pour refaire une mise à jour du serveur, et c'est ce qui se passera généralement, mais tout de même ce n'est pas terrible.
J'aurai aimé tester la fonction FtpCommand(), mais elle n'est dispo que pour windows CE. Y a t'il une autre fonction que je puisse utiliser pour envoyer moi-même une commande ftp ?
Merci de m'aider encore, je suis coincé.
Pendloup.
Cyrille Szymanski
Christian ASTOR wrote in news:42e7dc35$0$305$:
Non pas du tout, le problème ne vient pas de FtpFindFirstFile(), WinInet ou quoi que ce soit d'autre.
Sûr ?
KB284455, voire KB306587 CE ?
Ah.. ça m'apprendra à dire des bêtises.
Je suis peut-être borné, mais je ne comprends toujours pas pourquoi chercher à bricoler quelque chose qui par essence sera bancal ? Pourquoi chercher plus loin ?
-- Cyrille Szymanski
Christian ASTOR <castorix@club-internet.fr> wrote in
news:42e7dc35$0$305$7a628cd7@news.club-internet.fr:
Non pas du tout, le problème ne vient pas de FtpFindFirstFile(),
WinInet ou quoi que ce soit d'autre.
Sûr ?
KB284455, voire KB306587 CE ?
Ah.. ça m'apprendra à dire des bêtises.
Je suis peut-être borné, mais je ne comprends toujours pas pourquoi
chercher à bricoler quelque chose qui par essence sera bancal ? Pourquoi
chercher plus loin ?
Non pas du tout, le problème ne vient pas de FtpFindFirstFile(), WinInet ou quoi que ce soit d'autre.
Sûr ?
KB284455, voire KB306587 CE ?
Ah.. ça m'apprendra à dire des bêtises.
Je suis peut-être borné, mais je ne comprends toujours pas pourquoi chercher à bricoler quelque chose qui par essence sera bancal ? Pourquoi chercher plus loin ?