2010-03-30 4 views
0

J'utilise le code suivant pour appeler un fichier batch:comment appeler plus de 1 fichiers batch dans un vbscript?

dim shell 
set shell=createobject("wscript.shell") 
shell.run "a.bat D:\a" 
set shell=nothing  

Comment faire pour appeler plus de 1 fichier batch, de sorte que lorsque la 1ère exécution de fichier est sur le 2ème fichier est exécuté. comme toujours, j'apprécie vraiment toute aide offerte.

+0

ce qui est dans votre lot que vous ne pouvez pas faire directement? Vbscript – ghostdog74

+0

Il s'agit probablement d'un outil tiers ou hérité qui ne mérite pas d'être réécrit. – paxdiablo

+0

dans mes fichiers batch je fais appel ligne de commande pour copier les fichiers et les zip – sushant

Répondre

3

Ci-dessous

shell.run "a.bat D:\a" 

ajouter une autre ligne avec un autre

shell.run "b.bat ...." 

Ou créer un fichier de commandes qui appelle tous les autres fichiers de traitement par lots, et d'appeler ce fichier batch de votre script.

+0

mon .bat ressemble: D: cd D: \ d winzip32.exe -min -a D: \ a mon c.bat ressemble: xcopy D: \ d D: \ o/E mon b.bat ressemble à: appeler a.bat appeler c.bat quand j'exécute b.bat, il appelle a. bat mais pas c.bat – sushant

+0

les fichiers batch fonctionnent-ils indépendamment? c'est-à-dire lancer manuellement a.bat puis c.bat. – ozczecho

+0

lorsque j'exécute c.bat (xcopy D: \ d D: \ o/E) il invite à entrer d (pour le répertoire) ou f (pour les fichiers). Peut-être que b cause le problème. comment puis-je éliminer cette invite et définir d (répertoire) par défaut – sushant

1

Option explicite

Dim oShell

ensemble oShell = WScript.CreateObject ("WScript.Shell")

oShell.Run « RunAs/noprofile/user: Admininistrator "" % comspec%/c 1stcommand & & & & 2ndcommand 3rdcommand "" », 1, false

WScript.Sleep 1000

oShell.Sendkeys "AdmininistratorPassword ~"

WScript.Quit

Questions connexes