NSIS 静默安装程序返回退出代码 1



我将NSIS脚本编译为.exe安装文件。我使用命令行\S静音选项启动.exe。

安装按预期静默执行,但退出代码为 1。退出代码 1 对应于用户在向导中选择取消的情况。但是,安装成功且模式无提示(无用户交互)。另外,此退出代码从何而来,以及如何手动强制执行退出代码 0?

我有一个想法,我可以在 .onInstSuccess 函数中做一些事情,以便在安装成功时强制执行退出代码 1。

此外,ExecWait正在将退出代码捕获到变量中,但没有"set"选项。

你会推荐什么?

感谢和问候

没有任何示例代码,很难猜测问题可能是什么!

您可以使用 SetErrorLevel 设置特定的退出代码。

就 ExecWait 而言,设置任何内容都没有意义,当它返回子进程时已经结束。如果要使用子进程的退出代码,只需获取它:

ExecWait '"c:foo.exe"' $0
SetErrorLevel $0

最新更新