これは私が持っているもので、名前にスペースが含まれていないフォルダーにバットを移動すると、バットを実行できません。私の問題は、実際のバットがスペースのあるフォルダーにあるため、これが機能する必要があることです。
Set objShell = WScript.CreateObject("WScript.Shell")
objShell.Run("%comspec% /K C:\Program Files\ping.bat"), 1, True
これは私が持っているもので、名前にスペースが含まれていないフォルダーにバットを移動すると、バットを実行できません。私の問題は、実際のバットがスペースのあるフォルダーにあるため、これが機能する必要があることです。
Set objShell = WScript.CreateObject("WScript.Shell")
objShell.Run("%comspec% /K C:\Program Files\ping.bat"), 1, True
ファイル仕様を引用する必要があります。
Run("%comspec% /K ""C:\Program Files\ping.bat""")
これを試してみてください
Set objShell = WScript.CreateObject("WScript.Shell")
strCommand = chr(34)&"%comspec% /K C:\Program Files\ping.bat"&chr(34)
objShell.Run strCommand,1,True
これは古い質問であることは知っていますが、私に合った修正を見つけました。
必要なのは二重引用符です。
以下を試してください:
objShell.Run("%comspec% /K " & """C:\Program Files\ping.bat""""), 1, True);