[R] Problème Ecriture fichier de log.

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
bqsjayce
Niveau 1
Niveau 1
Messages : 4
Enregistré le : jeu. 24 janv. 2008 14:01
Status : Hors ligne

[R] Problème Ecriture fichier de log.

#1

Message par bqsjayce »

Bonjour,

Mon script fonctionne très bien, je veux juste ajouter à certains endroits un script d'écriture de fichier log comme ceci :

Code : Tout sélectionner

$filestatus = FileOpen("toto.log", 128)
FileWrite($filestatus, "Etape 58 ok." & @CRLF)
.......action.........
FileWrite($filestatus, "Etape 67 ok." & @CRLF)
FileClose($filestatus) 
 
Je me sert de ce fichier pour connaitre l'état d'avancement de la commande qui s'éxecute sur une machine distante. Le problème est que le fichier a l'air de se remplir d'un seul coup à la fin de l'éxécution du programme plutot qu'à chaque écriture de ligne. Auriez vous une idée ?

Merci d'avance

Js
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11773
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Problème Ecriture fichier de log.

#2

Message par Tlem »

Cela est normal, puisque au lancement de votre script, vous ouvrez le fichier pour écriture, et ne le fermer que quand le script fini !

Vous devriez plutôt faire ceci :

Code : Tout sélectionner

$File = "toto.log"

_EcritStatus($File, "Etape 58 ok.")
.......action.........
_EcritStatus($File, "Etape 67 ok.")


Func _EcritStatus($File, $State)
    $filestatus = FileOpen($File, 1 + 128) ; Le 1 c'est Pour ajouter à la fin du fichier.
    FileWrite($filestatus, $State & @CRLF)
    FileClose($filestatus)
EndFunc

 
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é".
chezsteph1
Niveau 1
Niveau 1
Messages : 9
Enregistré le : sam. 26 janv. 2008 19:25
Localisation : Lille
Status : Hors ligne

Re: [..] Problème Ecriture fichier de log.

#3

Message par chezsteph1 »

Il existe aussi une fonction toute prête :)
extrait de l'aide AutoIT :

Code : Tout sélectionner

#include <file.au3>
;
_FileWriteLog(@ScriptDir & "\my.log","Text 1")
;
_FileWriteLog(@ScriptDir & "\my.log","Text 2")
 
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11773
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Problème Ecriture fichier de log.

#4

Message par Tlem »

Effectivement (Je l'avais oublié), la fonction _FileWriteLog est plus complète puisque elle rajoute la date, l'heure, et gère les erreurs de création/écriture du fichier log.

Merci chezsteph1.
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é".
bqsjayce
Niveau 1
Niveau 1
Messages : 4
Enregistré le : jeu. 24 janv. 2008 14:01
Status : Hors ligne

[R] Problème Ecriture fichier de log.

#5

Message par bqsjayce »

Tlem a écrit :Effectivement (Je l'avais oublié), la fonction _FileWriteLog est plus complète puisque elle rajoute la date, l'heure, et gère les erreurs de création/écriture du fichier log.

Merci chezsteph1.
C'est bon j'ai trouvé la solution. Que je suis c**... En fait j'ai mis l'ouverture en 128 (UTF8) au lieu de 129 (UTF8 + ECRITURE). Le fait de ne pas mettre l'ecriture engendre ce probleme..

Merci à tous

Js
Répondre