dans un but cosmétique et convivial, je recherche une solution super simple et efficace qui me premettrait d'insérer une progressbar, ou une bannière défilante, ou un gif animé pendant l'éxécution d'un batch lancé auparavant !
je suis en train de finaliser un script dans lequel il ne me reste plus qu'à intégrer cela si possible !
dit d'une autre manière :
- lancement d'une commande Shellexecute pour exécuter un batch dont le temps de traitement prendra 7 à 30 secondes, en fonction de la machine sur laquelle on se trouve !
- le résultat de ce batch est la création d'un fichier TXT (result.txt)
- ensuite, j'affiche les détails de ce fichier TXT dans une GUI pour traitement ultérieur
pendant l'exécution de ce batch, j'aimerais pouvoir afficher quelque chose qui indique que le travail est en cours...
soit un Gif animé (mais j'ai vu que ce n'était pas bien pris en charge avec les commandes Splash
soit une GUI dans laquelle je pourrais insérer une progress bar (avec un temps max à définir)
idéalement, rajouter quelque chose dans la fonction SplashText (ou MsgBox) du type une barre de progression qui va de 0 à 100% sur un temps de 30s max serait top !
toute opinion la bienvenue !
merci !!
![Smile :)](./images/smilies/icon_smile.gif)
Code : Tout sélectionner
#include <ColorConstants.au3>
#include <FontConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#Include <File.au3>
#Include <Array.au3>
HotKeySet( "{ESC}", "_ExitESC")
global $MyCommand="MyBat.bat"
MyProg()
MsgAttente()
Exit
Func MyProg()
filedelete("result.txt")
filedelete($mycommand)
Filewriteline($mycommand,"Timeout 10")
FileWriteline($Mycommand,"echo Item=MAG1 >Result.txt")
ShellExecute($MyCommand,"","","",@SW_HIDE) ; app1\install.cmd , etc
EndFunc
Func MsgAttente()
;SplashImageOn("Wait","source.gif")
SplashTextOn("Collecting System Datas","Please Wait...",800,600)
For $i=1 to 5
If not FileExists("Result.txt") then
sleep(4000)
Else
;MsgBox(0,"Leaving",$i,2)
$i=21
EndIf
Next
splashOff()
EndFunc