我正在尝试在使用 Wix 卸载之前关闭一个进程。我已经确认只要有一个可见窗口它就可以工作,但是如果没有一个可见窗口(这个应用程序大部分时间都是这种情况,因为它是一个系统托盘应用程序),卸载程序就会挂起,并且最终继续卸载,使进程继续运行。
根据这个论坛帖子,Wix 过去似乎无法关闭最小化的应用程序,所以我想知道这是否相关?
关于我还能做些什么来确保进程被关闭的任何建议?有什么方法可以尝试使用 Win32 api 在我的应用程序中捕获消息?
这是 CloseApplication 声明:
<util:CloseApplication Id="CloseApp" CloseMessage="yes" Target="App.exe" RebootPrompt="yes" />
这是自定义操作:
<Custom Before="InstallInitialize" Action="WixCloseApplications">REMOVE = "ALL"</Custom>