我尝试使用WIX编写MSI安装程序.在卸载过程中,我需要运行一个专门的自定义操作,首先停止我的服务,然后关闭应用程序.我使用以下标记在InstallInitialize事件之后执行此操作:
<CustomAction Id='myCustomAction' BinaryKey='myDll' DllEntry='msiUninstallInitialize' Execute='deferred' Impersonate='no' /> <InstallExecuteSequence> <Custom Action='myCustomAction' After='InstallInitialize'></Custom> </InstallExecuteSequence>
问题是,如果我的应用程序的先前版本在我尝试使用我的MSI升级到较新版本之前运行,我会收到一条Restart Manager弹出此消息:
然后这一个:
<Property Id="MSIRESTARTMANAGERCONTROL" Value="disable" />
但现在卸载程序显示此窗口:
解决方法
您已禁用与Windows Installer的重新启动管理器交互,因此现在Windows Installer将回退到其旧行为FileInUse对话框.
MSIRESTARTMANAGERCONTROL Property记录了此行为.
我从来没有尝试过,但理论上说你可以隐藏你的FilesInUse对话框(Dialog / @ Hidden =’yes’)以使对话框不显示.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。