Não é possível iniciar o arquivo bat do formulário VBScript se o caminho contiver um espaço
Eu tenho tentado iniciar o arquivo myFileToRun.bat de um caminho, por exemplo.
D:\My Folder\batchfiles\myFileToRun.bat
Abaixo está o VBScript através do qual estou tentando executá-lo.
Dim WshShell, strCurrentDirectory
Set WshShell = CreateObject("WScript.Shell")
strCurrentDirectory = WshShell.CurrentDirectory
WshShell.Run strCurrentDirectory & "\myFileToRun.bat" , 0
Set WshShell = Nothing
Não consigo executá-lo, pois o VBS está exibindo um erro dizendo: "O sistema não consegue encontrar o arquivo especificado". Tentei vários métodos mencionados em outras postagens semelhantes no stackoverflow e em outros fóruns. A maioria deles diz para adicionar aspas duplas.
Nota: Tentei adicionar aspas duplas, aspas duplas, por exemplo
1.WshShell.Run """strCurrentDirectory & "\myFileToRun.bat" "", 0
2.WshShell.Run """"strCurrentDirectory & "\myFileToRun.bat"""", 0
3.WshShell.Run """"strCurrentDirectory & \myFileToRun.bat"""", 0
Nenhum deles funcionou como eu acho que estou dando citações em lugares errados. A variável strCurrentDirectory muda para "strCurrentDirectory" em vez de "D: \ My Folder \ batchfiles" e, portanto, meu caminho final seria "strCurrentDirectory" "\ myFileToRun.bat", o que está errado. Eu preciso que o caminho seja "D: \ My Folder \ batchfiles \ myFileToRun.bat" e o arquivo a ser executado.
Eu realmente não entendi o conceito dessas citações adicionais. Então você pode me explicar esse conceito e me ajudar a resolver esse erro.
Edit: Eu tenho a solução. Como tive que me referir ao diretório atual, simplifiquei o script.
Dim WshShell
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "myFileToRun.bat", 0
Set WshShell = Nothing
Obrigado a todos por suas respostas. Foi útil.