0

我正在尝试创建一个 SFX 文件并在之后运行一个 vbs。这是我的配置文件:

;!@Install@!UTF-8!
InstallPath="c:\\windows\\temp\\"
ExecuteFile="cscript.exe"
ExecuteParameters="c:\\windows\\temp\\script.vbs"
;!@InstallEnd@!

.7z 存档没有损坏,我 cn=an 打开并提取文件。

这是我创建.exe的方式:

copy /b 7zS.sfx + config.txt + SylinkReplacer.7z SylinkReplacer.exe

当我运行它时,cmd windows 会闪烁,我感觉它正在尝试运行 vbs,但我可以看到它没有被提取到 C:\windows\temp 中。我运行了进程监视器,显然它在名为 7zNNNNNN 的临时文件夹中提取了我用户的 %appdata% 中的文件,该文件夹随后被删除。有什么建议吗?谢谢

4

1 回答 1

0

我找到了一种让它工作的方法(我实际上在 stackoverflow 上找到了它,但现在我再也找不到了)。

;!@Install@!UTF-8!
ExecuteFile="ReplaceSylink.vbs"
;!@InstallEnd@!

这不是最好的解决方案,因为我希望它使用 cscript(控制台)运行它,而在许多服务器上,默认引擎是 wscript(GUI)。我会在这个 http://www.robvanderwoude.com/vbstech_engine_force.php上使用一些东西来强制 cscript 像这样

于 2018-02-13T10:56:26.037 回答