我正在使用WinRAR SFX模块创建安装,并使用其预置选项来运行一些初步测试。
由于wscript只能接受vbs文件,而不是脚本本身,我首先运行“cmd / c echo {... script code ...}> setup.vbs”,然后运行“wscript setup”。 VBS”。第一个cmd命令的运行打开一个简短的命令窗口,我真的想避免这种情况。我曾想过使用RunDll32来编写这些数据,但找不到任何合适的API来使用。
任何人都可以想办法绕过它并使用小的VBScript文本创建一个小文件,而无需打开命令提示符窗口吗?
非常感谢,
splintor
答案 0 :(得分:2)
脚本代码是否已存在于文件中?如果是的话,
您可以使用TYPE命令将脚本发送到文件:
TYPE [script_file] > setup.vbs
或复制脚本文件:
COPY [script_file] setup.vbs
如果脚本代码位于cmd
的正文中,则可以使用START
命令运行cmd
而不使用窗口(/b
标志):< / p>
START /B cmd /c echo {...script code...} > setup.vbs
答案 1 :(得分:1)
不是使用cmd /c echo {...script code...} > setup.vbs
作为预设步骤,也许您可以将VBscript打包到您的初步测试并创建setup.vbs
的安装,然后为您调用setup.vbs
。你必须把它放在WinRAR脚本的设置部分。
你可以像这样从VBScript调用另一个VBScript:
Set WSHShell = CreateObject("WScript.Shell")
WSHShell.Run "wscript d:\setup.vbs, ,True
有关“运行”命令的语法,请参阅this MSDN link。