我有一个WiX延迟自定义操作,有条件地修改了一些注册表项。要使更改生效,需要重新启动。我希望用户获得标准对话框,提示他们在安装完成后重新启动。
如何从延迟的自定义操作安排重新启动?
答案 0 :(得分:2)
为什么你有一个自定义动作做MSI / WiX知道如何做本地的事情?
更简洁的方法是将注册表值与具有所需条件的组件相关联。然后,您可以使用相同的条件触发一个简单的自定义操作,使用MSIRUNMODE_REBOOTATEND参数调用MsiSetMode。如果你使用的是C#/ DTF,那就是session.SetMode(InstallRunMode.RebootAtEnd)。
这样,如果安装中止,取消,失败,它可以回滚注册表更改。