Wix - 如何通过自定义操作强制终止任何进程?

时间:2014-12-17 07:01:25

标签: wix windows-installer uninstall custom-action

我有一个创建的msi并安装了它,但我在卸载过程中遇到了问题。我希望在通过自定义操作卸载之前强制关闭应用程序 - wix 我经常搜索,但没有找到任何解决方案。 我想要一个像这样的解决方案。

<Property Id="QtExecCmdLine" Value='"[SystemFolder]taskkill.exe" /F /IM ConfigurationManager.exe     /t'/> 
<CustomAction Id="StopUserExe" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="immediate"     Return="ignore"/>

<InstallExecuteSequence>
  <Custom Action='StopUserExe' Before='RemoveFiles'></Custom>
</InstallExecuteSequence>

2 个答案:

答案 0 :(得分:3)

您是否尝试过Taskkill

示例:

<CustomAction Id="TaskKill" Execute="deferred" ExeCommand="taskkill /f /im notepad.exe" />

答案 1 :(得分:-1)

在自定义操作中,您可以枚举进程(EnumProcesses())并为所需进程调用TerminateProcess()。