首页 文章

VBScript没有执行命令提示命令?

提问于
浏览
0

我使用以下VBScript代码来提取设置文件,

Set oShell = CreateObject ("WScript.Shell") 
oShell.Run "cmd.exe ""C:\Program Files\NewFolder\setup.exe"" /extract:""C:\Program Files\NewFolder"" "

在命令提示符下手动完成时,此工作正常 . 但在VBScript中它只打开命令提示符,没有任何反应 .

我也尝试过这个,

Set oShell = CreateObject ("WScript.Shell") 
oShell.Run "%comspec% /K ""C:\Program Files\NewFolder\setup.exe"" /extract:""C:\Program Files\NewFolder"" "

就这样,它说,

'C:\ Program'不被识别为内部或外部命令,可操作程序或批处理文件 .

我也试过这些,

Set oShell = CreateObject ("WScript.Shell") 
oShell.Run "cmd.exe /c ""C:\Program Files\NewFolder\setup.exe"" /extract:""C:\Program Files\NewFolder"" "

Set oShell = CreateObject ("WScript.Shell") 
oShell.Exec "cmd.exe ""C:\Program Files\NewFolder\setup.exe"" /extract:""C:\Program Files\NewFolder"" "

这是行不通的 .

请问这是什么问题?

1 回答

  • 1

    看起来您的可执行文件中的自提取程序无法处理带空格的路径 . 作为一种解决方法,您可以更改工作目录并调用无路径的设置 .

    Set sh = CreateObject ("WScript.Shell")
    sh.CurrentDirectory = "C:\Program Files\NewFolder"
    sh.Run "%COMSPEC% /c setup.exe /extract:."
    

相关问题