2013-03-02 181 views
2

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

回答

3

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

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

+0

请您详细解释如何通过在BA界面取消buttton来停止安装? – Saravanan 2013-03-03 18:31:05

+1

从回调中返回IDCANCEL。 – 2013-03-04 21:21:16