2

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

4

1 回答 1

4

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

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

于 2013-03-02T21:40:56.627 回答