如果正在卸载已安装的功能,如何在WiX中执行自定义操作?

我有一个WiX安装程序,它具有需要在卸载时执行的每个功能自定义操作.现在,我遇到了一个问题,即无论用户是否实际安装了该功能,操作都会执行.自定义操作失败,因为他们希望存在某些资源,然后整个安装陷入破坏状态.

当且仅当正在卸载其相关功能时,运行自定义操作的正确方法是什么?我已经包含了我目前正在使用的片段,如果有帮助的话.

<Custom Action="LaunchUninstallCustomAction" Before="RemoveFiles"><![CDATA[(NOT UPGRADINGPRODUCTCODE) AND (REMOVE="ALL") AND (&FeatureName<=2)]]></Custom>
尝试
<Custom Action="LaunchUninstallCustomAction" Before="RemoveFiles">
   <![CDATA[(NOT UPGRADINGPRODUCTCODE) 
             AND (&FeatureName=2) AND (!FeatureName=3)]]>
</Custom>

有关details的条件语法和examples,请参阅MSDN

相关文章

Windows注册表操作基础代码 Windows下对注册表进行操作使用的...
黑客常用WinAPI函数整理之前的博客写了很多关于Windows编程的...
一个简单的Windows Socket可复用框架说起网络编程,无非是建...
Windows文件操作基础代码 Windows下对文件进行操作使用的一段...
Winpcap基础代码 使用Winpcap进行网络数据的截获和发送都需要...
使用vbs脚本进行批量编码转换 最近需要使用SourceInsight查看...