在自定义操作中启用/禁用功能

时间:2015-03-22 14:31:19

标签: wix wix3.5 wix3.6 wix3.7 wix3.8

我有一个包含2个功能的小型安装项目,两个功能都是默认发布的(Level = 1)。在自定义操作的某些情况下,我想取消发布(设置Level = 4)其中一项功能。用C#编写的自定义操作。我怎么能这样做?

1 个答案:

答案 0 :(得分:4)

您可以在哪里限制,请参阅条件表的文档并在CostFinalize之前执行此操作:

https://msdn.microsoft.com/en-us/library/aa368014(v=vs.85).aspx

所以假设您已经掌控,并且您在安装的早期就使用了功能条件。您已经有一个声明级别为1的Feature元素,因此添加一个条件,将属性设置为某个值时将其设置为4。在您的代码中只需设置属性,级别将在CostFinalize处更改。

示例:

Feature Id="FeatureX" Title="Feature X" Level="1"
   <Condition Level="4">   <![CDATA[PROPVALUE=5]]>   </Condition>