Le lancement d'un script AutoIt fera toujours apparaitre le sablier une fraction de seconde, à cause du chargement de l'interpréteur.
Par contre une fois lancé, celui-ci ne fait plus apparaitre le sablier si vous lui faites faire des 'actions rapides'.
Essayez ceci :
Code : Tout sélectionner
#include <Constants.au3>
#Include <File.au3>
MsgBox(0,"Test 1","Utilisation de la commande RUN." & @CRLF & "Demarrage dans 3 secondes",3)
Local $foo = Run(@ComSpec & " /c dir /S " & @SystemDir, @SystemDir, @SW_HIDE, $STDERR_CHILD + $STDOUT_CHILD)
Local $line
While 1
$line = StdoutRead($foo)
If @error Then ExitLoop
If $line <> "" Then MsgBox(0, "STDOUT read:", $line, 5)
Wend
MsgBox(0,'Test 1','Test 1 terminé (Timeout 5s)', 5)
MsgBox(0,'Test 2',"Utilisation de la commande ShellExecute." & @CRLF & "Demarrage dans 3 secondes",3)
Local $foo = ShellExecute(@ComSpec, " /c dir /S " & @SystemDir, @SystemDir)
MsgBox(0,'Test','Test terminé (Timeout 5s)', 5)
MsgBox(0,'Test 3',"Utilisation de la commande _FileListToArray." & @CRLF & "Demarrage dans 3 secondes",3)
_FileListToArray(@SystemDir, "*" ,0)
MsgBox(0,'Test 3','Test terminé (Timeout 5s)', 5)
Vous ne verrez le curseur qu'au lancement du script et à la fin ...
Et pourtant, ce script liste les fichiers du dossier system32.
