2010-06-13 3 views
0

J'ai un script VBScript qui exécute un deuxième script VBScript. Le deuxième script VBScript pose des questions à partir de la zone de saisie. Mon problème est que "MyShell.Run" n'attend pas que SecondVBscript.vbs soit terminé. Et l'autre syntaxe VBScript s'exécute aussi immodestementAttendez le deuxième script VBScript jusqu'à la fin du script VBScript principal

Je dois attendre que le processus MyShell.Run se termine, puis exécuter l'autre syntaxe VBScript. Comment puis je faire ça?

Set MyShell = Wscript.CreateObject("WScript.Shell") 

MyShell.Run " C:\Program Files\SecondVBscript.vbs" 

Set MyShell = Nothing 

Autre syntaxe VBScript

Répondre

1

La méthode Run a un argument optionnel bWaitOnReturn, si vous définissez cela à true, n'attend-il pas alors? Voir here pour la documentation de la commande Run.

+0

s'il vous plaît donnez-moi un exemple pertinent afin de le mettre dans le script thx yael – yael

+0

@yael: De la page de documentation 'Retour = WshShell.Run (" notepad "& WScript.ScriptFullName, 1 , vrai) '. –

+0

Je ne comprends pas le bloc-notes dans la syntaxe yael – yael

-1

Si je vous ai bien, vous pouvez faire votre attente de script à un certain point en utilisant la méthode sleep d'objet WScript:

MyShell.Sleep(12000) 
+0

désolé mais ce ne est pas agood solution, je dois attendre jusqu'à ce que le script terminé puis cont – yael

+0

@yael: Script se termine que lorsque l'analyseur vbs lit la dernière ligne du script. Vous pouvez décider pour vous-même maintenant :) – Sarfraz

Questions connexes