如何从CustomAction获取返回码?

fre*_*ley 9 custom-action wix return-value

我的项目中有以下CustomAction:

<CustomAction Id="InstallDriver"
                  Return="check"
                  Execute="deferred"
                  Impersonate="no"
                  FileKey="FileDriverInst"
                  ExeCommand="-install" />

<InstallExecuteSequence>
    <Custom Action="InstallDriver" Before="InstallServices" />
</InstallExecuteSequence>
Run Code Online (Sandbox Code Playgroud)

安装驱动程序的程序会生成有用的返回码,例如,如果安装失败,因为系统需要在先前的驱动程序卸载后重新启动.

目前,如果返回成功以外的任何内容,我会收到一个对话框,说"作为安装程序的一部分运行的程序未按预期完成".并且安装失败.这不是最佳选择.

如何获取和处理返回代码?

Cos*_*rvu 5

Windows Installer 不支持处理自定义操作返回值。

对于 EXE 自定义操作,非零返回值被解释为错误并且安装停止。只有 win32 DLL 或 VBScript 自定义操作可以通过其返回代码更改安装行为,但它仍然非常有限。

如果你想在安装后重启机器,你可以设置REBOOT属性。