Невозможно запустить файл bat формы VBScript, если путь содержит пробел

Я пытался запустить файл myFileToRun.bat, например, по пути.

D:\My Folder\batchfiles\myFileToRun.bat

Ниже приведен сценарий VBScript, через который я пытаюсь его запустить.

Dim WshShell, strCurrentDirectory  
Set WshShell = CreateObject("WScript.Shell")  
strCurrentDirectory    = WshShell.CurrentDirectory  
WshShell.Run strCurrentDirectory & "\myFileToRun.bat" , 0  
Set WshShell = Nothing

Я не могу запустить его, так как VBS выдает ошибку «Система не может найти указанный файл». Я пробовал различные методы, упомянутые в других подобных постах в stackoverflow и других форумах. Большинство из них говорят, чтобы добавить двойные кавычки.

Примечание: я попытался добавить двойные кавычки, например, двойные двойные кавычки

1.WshShell.Run """strCurrentDirectory & "\myFileToRun.bat" "", 0
2.WshShell.Run """"strCurrentDirectory & "\myFileToRun.bat"""", 0
3.WshShell.Run """"strCurrentDirectory & \myFileToRun.bat"""", 0

Ни один из них не сработал, так как я предполагаю, что я даю цитаты в неправильных местах. Переменная strCurrentDirectory изменяется на «strCurrentDirectory» вместо «D: \ My Folder \ batchfiles», и поэтому мой окончательный путь будет «strCurrentDirectory» «\ myFileToRun.bat», что неверно. Мне нужно, чтобы путь был «D: \ My Folder \ batchfiles \ myFileToRun.bat» и файл для запуска.

Я не очень понял концепцию этих добавочных цитат. Поэтому, пожалуйста, объясните мне эту концепцию и помогите решить эту ошибку.

Изменить: у меня есть решение. Поскольку я должен был ссылаться на текущий каталог, я просто сделал скрипт проще.

Dim WshShell
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "myFileToRun.bat", 0
Set WshShell = Nothing

Спасибо всем за ваши ответы. Это было полезно.

Ответы на вопрос(0)

Ваш ответ на вопрос