在WIX中我喜欢正常安装和卸载的功能,但在维修期间不要触摸。
我无法找到允许我这样做的条件。 我的尝试失败了:该功能在修复时重新安装(我不需要)或未卸载。
这是我上次尝试的一个示例:
<Feature Id="aFeature" Title="A Features" Level="1">
<ComponentRef Id="aComponent" />
<Condition Level="0">
<![CDATA[WixUI_InstallMode="Repair"]]>
</Condition>
</Feature>
在维修期间卸载但未重新安装的正确条件是什么? 或者我做错了什么?
答案 0 :(得分:3)
这对我有用:
<Feature Id="aFeature" Title="A Features" Level="1">
<ComponentRef Id="aComponent" />
<Condition Level="0">
<![CDATA[REINSTALL<>""]]>
</Condition>
</Feature>
这种方式在修复期间,功能会被忽略而不会被触及,但通常会被卸载
答案 1 :(得分:1)
我能想到的唯一方法是给该功能中的所有组件一个空的guid,这是Windows Installer不要对它们做任何事情的信号,例如修复它们,修补它们,卸载它们。如果产品已经发货,那就太晚了。然而,这是一个激烈的步骤,通常只有当您想要安装一些临时使用的东西然后删除它们时才需要。所以你在这里与框架作斗争。看起来你有一个问题,禁用功能修复可能会解决,所以为什么不描述问题,看看是否有另一个解决方案?