Vbscript VB脚本希望从VB运行.bat文件

Vbscript VB脚本希望从VB运行.bat文件,vbscript,Vbscript,我正试图从VB运行go.bat,但当我运行脚本时,我得到::找不到特定的文件 但是在cmd窗口中,文件go.bat存在。什么问题 Dim MyShell Dim shell_cmd shell_cmd = "C:\Program Files\dir1\dir2\wizard\go.bat" set MyShell = CreateObject("WScript.Shell") MyShell.Run shell_cmd, 1, 1 从cmd窗口 C:\Program Fil

我正试图从VB运行go.bat,但当我运行脚本时,我得到::找不到特定的文件

但是在cmd窗口中,文件go.bat存在。什么问题

Dim MyShell

Dim shell_cmd

  shell_cmd = "C:\Program Files\dir1\dir2\wizard\go.bat"

  set MyShell = CreateObject("WScript.Shell")

  MyShell.Run shell_cmd, 1, 1
从cmd窗口

C:\Program Files\dir1\dir2\wizard>go.bat

不确定您是否知道,但在vb中可以使用
Shell
函数:

(似乎比您正在使用的更容易)

我不知道你为什么会收到这条信息,但你提到的两条路径实际上是不同的:

C:\Program Files\dir1\dir2\wizard\go.bat
C:\Program Files\dir1\dir2\wizard>go.bat
                                 ^

批处理文件的完整路径包含空格,因此需要用双引号将其括起来,如下所示:

shell_cmd = """C:\Program Files\dir1\dir2\wizard\go.bat"""


第二件事是从命令提示符窗口,显然,根据问题,因此工作目录是
C:\Program Files\dir1\dir2\wizard
,它们从那里执行
go.bat
。不,它们是相同的C:\Program Files\dir1\dir2\wizard>go.bat go.bat在向导目录下可能重复
shell_cmd = Chr(34) & "C:\Program Files\dir1\dir2\wizard\go.bat" & Chr(34)