维克斯。如何在修复期间不重新安装功能?
WIX. How to not reinstall a feature during repair?
在 WIX 中,我希望可以正常安装和卸载一个功能,但在修复过程中不要触及。
我找不到允许我这样做的条件。
我的尝试失败了:该功能在修复时重新安装(我不需要的)或未卸载。
这是我上次尝试的示例:
<Feature Id="aFeature" Title="A Features" Level="1">
<ComponentRef Id="aComponent" />
<Condition Level="0">
<![CDATA[WixUI_InstallMode="Repair"]]>
</Condition>
</Feature>
在修复过程中卸载但不重新安装的正确条件是什么?
或者我做错了什么?
我能想到的唯一方法是为该功能中的所有组件提供一个空的 guid,这是向 Windows 安装程序发出的信号,不要对它们进行任何操作,例如修复它们、修补它们,卸载它们。如果产品已经发货,那就太晚了。然而,这是一个激烈的步骤,通常只有当你想安装一些临时使用的东西然后删除它们时才需要。因此,您在这里与框架作斗争。看起来您遇到了禁用功能修复可能会解决的问题,那么为什么不描述问题以查看是否有其他解决方案呢?
这对我有用:
<Feature Id="aFeature" Title="A Features" Level="1">
<ComponentRef Id="aComponent" />
<Condition Level="0">
<![CDATA[REINSTALL<>""]]>
</Condition>
</Feature>
这种方式在修复过程中该功能被忽略且未被触及,但通常被卸载
在 WIX 中,我希望可以正常安装和卸载一个功能,但在修复过程中不要触及。
我找不到允许我这样做的条件。 我的尝试失败了:该功能在修复时重新安装(我不需要的)或未卸载。
这是我上次尝试的示例:
<Feature Id="aFeature" Title="A Features" Level="1">
<ComponentRef Id="aComponent" />
<Condition Level="0">
<![CDATA[WixUI_InstallMode="Repair"]]>
</Condition>
</Feature>
在修复过程中卸载但不重新安装的正确条件是什么? 或者我做错了什么?
我能想到的唯一方法是为该功能中的所有组件提供一个空的 guid,这是向 Windows 安装程序发出的信号,不要对它们进行任何操作,例如修复它们、修补它们,卸载它们。如果产品已经发货,那就太晚了。然而,这是一个激烈的步骤,通常只有当你想安装一些临时使用的东西然后删除它们时才需要。因此,您在这里与框架作斗争。看起来您遇到了禁用功能修复可能会解决的问题,那么为什么不描述问题以查看是否有其他解决方案呢?
这对我有用:
<Feature Id="aFeature" Title="A Features" Level="1">
<ComponentRef Id="aComponent" />
<Condition Level="0">
<![CDATA[REINSTALL<>""]]>
</Condition>
</Feature>
这种方式在修复过程中该功能被忽略且未被触及,但通常被卸载