[..] Lecture de commande CMD

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Tyrael
Niveau 1
Niveau 1
Messages : 10
Enregistré le : mer. 01 août 2012 16:38
Status : Hors ligne

[..] Lecture de commande CMD

#1

Message par Tyrael »

Bonjour,

Je cherche à récupérer dans une variable le retour d'un commande CMD faite avec un RUN()
En cherchant sur le forum j'ai trouvé une solution qui fonctionne à une exception près.

Si ma commande cmd fonctionne correctement, j'ai bien ce qu'elle retourne.
Mais si elle retourne une erreur je n'arrive pas à lire ce qui est affiché dans la fenêtre cmd.

Mon code :
► Afficher le texte
Cette commande retourne si on arrive à joindre le serveur ($Tmp dans le code) la liste des imprimantes installées pour les mettre dans $Line.
Par contre si le serveur n'existe pas ou qu'il est impossible de le joindre (cause d'accès refusé) je n'ai rien dans ma variables $Line.
Or dans la fenêtre cmd j'ai bien du texte :
Si serveur inconnu :
► Afficher le texte
Si accès refusé :
► Afficher le texte
Mon serveur ne s'appelle pas toto j'ai juste changé son vrai nom ;)

Et malgré ce texte rien n'est récupéré (et pourtant ce même texte s'affiche dans la console AutoIt sans mettre de consolewrite)

Une idée d'où vient le problème et comment récupérer ce texte ?

P.S: J'ai tenté un
MsgBox(0,'t',StderrRead($Cmd))
à la fin de ma boucle While mais elle est vide (peu être mal utilisé ?)
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11830
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Lecture de commande CMD

#2

Message par Tlem »

Pourquoi ne lisez vous pas le flux d'erreur (STDERR_CHILD) comme indiqué dans la doc de la commande Run et Principalement dans la documentation de la commande StderrRead() : http://www.autoitscript.fr/autoit3/docs ... rrRead.htm
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é".
Répondre