bootstrapper应用程序回滚

时间:2013-03-02 17:45:03

标签: wix rollback bootstrapper burn cancel-button

我正在尝试创建一个安装我的msi的Wix刻录引导程序。 bootstrapper exe工作正常但唯一的问题是,每当我尝试在中途取消安装时,msi中添加的自定义操作就不会停止。任何人都可以告诉如何在单击取消按钮时停止和回滚安装。提前谢谢。

1 个答案:

答案 0 :(得分:3)

自定义操作必须发送::MsiProcessMessage()次调用,以提供接收取消和处理该API返回代码的可能性(通常为ERROR_INSTALL_USEREXITIDCANCEL)。然后必须退出自定义操作。

如果您查看一些WiX标准自定义操作,您会看到很多对WcaProcessMessage()等的调用。我们保存返回代码,WcaFinalize()在退出时返回正确的东西。查看src\ca\wcautil\wcautil.cppsrc\ca\wcautil\wcawrap.cpp以获取示例代码。