我使用以下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:\程序'不被识别为内部或外部命令,可操作程序或批处理文件。
我也试过这些,
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"" "
它不起作用。
请问这是什么问题?
答案 0 :(得分:1)
看起来您的可执行文件中的自提取程序无法处理带空格的路径。作为一种解决方法,您可以更改工作目录并在没有路径的情况下调用设置。
Set sh = CreateObject ("WScript.Shell")
sh.CurrentDirectory = "C:\Program Files\NewFolder"
sh.Run "%COMSPEC% /c setup.exe /extract:."