我的安装程序WIX功能树中有一项功能:
<Feature Id="Myfeature" Level="1" AllowAdvertise="yes">
<ComponentGroupRef Id="EnableMyFeature"/>
</Feature>
然后我想修改一个配置文件,根据是否选择了wheter功能(如果选择则将值更改为true,如果未选择则将值更改为false)。
<ComponentGroup Id="EnableMyFeature" Directory="InstallDir">
<Component Id="EnableAlarmMonitor" Guid="{142D13A4A-43D6-45ED-A6C4-7895F3891578}" KeyPath="yes">
<util:XmlFile Id="MyFeature.config"
Action="setValue"
ElementPath="/configuration/myFeatureConfig/enable/option[\[]@region='enab'[\]]"
Name="load"
File="[#MyFeature.config]"
Value="[MY_FEATURE_SELECTED]" />
</Component>
我有一个属性:
<Property Id="MY_FEATURE_SELECTED" Value="false" Secure="yes"/>
如果功能被选中,我将其设置为true:
<SetProperty Id="MY_FEATURE_SELECTED" Value="true" Sequence="execute" After="InstallInitialize">
<![CDATA[&MyFeature=3]]>
</SetProperty>
不幸的是,这种方式不起作用。为什么?