Afficher la progression d'un script VBS

Afficher la progression d'un script VBS - VB/VBA/VBS - Programmation

Marsh Posté le 16-05-2007 à 07:15:51    

Salut,
 
je viens d'achever un script dont le déroulement est assez long.
Le script lance des requêtes WMI à travers toutes les machines du réseau pour remonter certaines info dont nous avons besoin (audit de sécurité).
Le pb c'est que le script est totalement silencieux, donc pendant plusieurs dizaines de minutes on ne sait pas où il en est (et si il est quelque part d'ailleur).
 
Je voudrait donc pouvoir afficher dans une fenetre le nom de la machine en cours.
 
Lorsqu'il est lancé en linge de commande il suffit de faire un "wscript.echo" et le tour est joué.
 
Mais en mode graphique, wscript.echo ouvre un "pop-up" et attend qu'on clique sur "OK" pour continuer, de plus on n'affiche alors que le nom de la machine en cours, on n'a aucune vue sur celles déjà traitées.
 
J'ai essayé de mettre mon script dans un "HTA" avec un "SPAN", mais le champ "SPAN" ne se raffraichit pas dynamiquement. Y a t il possibilité de le raffraichir manuellement (sans relancer tout le script comme le fait

Location.Reload(True)

) ?
 
J'ai également tenté un HTA muni d'un

textearea

mais le problème est le même : comment forcer le raffraichissement de la textearea à la main (à la fin de chaque boucle) ?
 
Ceci dit, s'il y a moyen de faire ça sans passer par du HTA, je prend aussi bien sur  :D  
 
J'attend vos suggestions avec impatience  :bounce:


---------------
Mieux vaut fermer sa gueule et passer pour un con, plutot que de l'ouvrir, et montrer qu'on l'est...
Reply

Marsh Posté le 16-05-2007 à 07:15:51   

Reply

Marsh Posté le 16-05-2007 à 13:04:43    

Lance ton script via cscript plutot que wscript.  Les messages sont envoyés vers la fenètre cmd dans laquelle tu exécutes le script ce qui évite de voir le script s'arrèter.  Tu peux rediriger vers un fichier si nécessaire.

Reply

Marsh Posté le 16-05-2007 à 13:46:31    

bignose a écrit :

Lance ton script via cscript plutot que wscript.  Les messages sont envoyés vers la fenètre cmd dans laquelle tu exécutes le script ce qui évite de voir le script s'arrèter.  Tu peux rediriger vers un fichier si nécessaire.


 
Bin, le but c'est que justement ça ne s'éxécute pas en cscript, j'ai besoin d'avoir une présentation "graphique" du bidule...
D'où la difficulté, pour l'instant en cscript avec des wscript.echo à toutes les sauces ça marche nickel, mais c'est du "texte-mode" :(
 
Pas très user-friendly :(


---------------
Mieux vaut fermer sa gueule et passer pour un con, plutot que de l'ouvrir, et montrer qu'on l'est...
Reply

Marsh Posté le 21-05-2007 à 13:20:19    

Peux-tu exécuter le script depuis un browser ?  Tu pourras afficher ce que tu voudras alors.

Reply

Marsh Posté le 21-05-2007 à 13:47:16    

Il existe des boites de message comme les wscript.echo, mais qui se ferment toutes seules au bout de quelques secondes.
Essayer par exmple le script suivant :

' Displaying Timed Progress Message Boxes
Const TIMEOUT = 3 ' secondes avant la disparition de la messagebox
Set objShell = WScript.CreateObject("WScript.Shell" )
objShell.Popup "Step1", TIMEOUT
objShell.Popup "Step2", TIMEOUT
objShell.Popup "Step3", TIMEOUT

Reply

Marsh Posté le 21-05-2007 à 22:05:45    

Pour une barre de progression
http://www.ericphelps.com/scriptin [...] index.html
Tu peux évidemment ajouter du texte.
 
Consulter aussi le scriptcenter de microsoft.


Message édité par c_moa le 21-05-2007 à 22:08:20
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed