2010-09-09 5 views
2

J'essaye d'exécuter un fichier .bat en VB6 (mode fenêtre silencieuse) avec le code suivant.Problème lors de l'exécution d'un fichier .bat sur un chemin où le nom du dossier contient des espaces, en VB6

Set WshShell = CreateObject("WScript.Shell") 

cmds = WshShell.RUN("E:\My Folder\RunScript.bat", 0, True) 

Set WshShell = Nothing 

Les choses fonctionnent tout à fait bien s'il n'y a pas d'espace dans 'My Folder' appel .mais échoue si un tel espace est rencontré. Comment puis-je résoudre ce problème?

Répondre

4

Essayez de faire ceci:

cmds = WshShell.RUN("""E:\My Folder\RunScript.bat\""", 0, True) 
+0

Il a bien fonctionné ..... :-D Merci .. ....... – Kushal

0

Je ne sais pas beaucoup sur WSH, mais essayez d'ajouter des guillemets simples:

cmds = WshShell.RUN("'E:\My Folder\RunScript.bat'", 0, True) 

Ils peuvent faire l'affaire si RUN passe la commande à une autre instance.

Alternativement, si vous voulez aller la route laide, vous pouvez essayer de trouver le nom 8.3 du répertoire (en utilisant dir), et spécifiez cela.

0

Avez-vous essayé

cmds = WshShell.RUN("""E:\My Folder\RunScript.bat""", 0, True) 

?

+0

Il a bien fonctionné ..... :-D Merci ......... – Kushal

Questions connexes