Я добавил пользовательское действие, которое должно убить мое приложение с помощью Taskkill CMD, когда кто-то пытается удалить его с помощью добавления/удаления в панели управления, используя следующий код:В Wix MSI: Убийство процесса при удалении
<Property Id="TASKKILL">
<DirectorySearch Id="SysDir" Path="[SystemFolder]" Depth="1">
<FileSearch Id="taskkillExe" Name="taskkill.exe" />
</DirectorySearch>
</Property>
<CustomAction Id="ServerKill" Property="TASKKILL" Execute="immediate" Impersonate="yes" Return="ignore" ExeCommand="/F /FI "IMAGENAME EQ App.exe""/>
<InstallExecuteSequence>
<Custom Action="ServerKill" After="FindRelatedProducts"/>
</InstallExecuteSequence>
Однако это не работает. Если кто-то скажет мне, как исправить это или даже поделиться лучшим/более простым способом убить мой процесс приложений, я был бы признателен.
p.s
также пытался использовать WMIC с помощью ЦМД. Из-за этого это действительно не сработало, и сама установка не закончилась.
Привет, Спасибо за повтор проверил и я не могу определить элемент CloseApplication по неизвестной причине. Я получаю следующее сообщение: Setup.wxs (35): ошибка CNDL0200: элемент Product содержит необработанный элемент расширения 'util: CloseApplication'. Убедитесь, что указано расширение для элементов в пространстве имен «http://schemas.microsoft.com/wix/UtilExtension». WixUI_InstallDirNoLicense.wxs light.exe: ошибка LGHT0093: Не удалось найти раздел ввода в списке промежуточных продуктов. Ожидаемый раздел типа «Продукт». – Zaya3161
Я добавил некоторые подробности в ответ выше. –