如何在安装WiX Bundle时避免卸载以前安装的ExePackage(可再发行组件)?

时间:2013-09-03 23:59:03

标签: wix bootstrapper wix3.7

我有一个安装和卸载VC 2012 redist的Bundle。如果之前没有安装VC 2012 redist,它的工作正常。如果已经安装了VC 2012 redist,那么在卸载我的bundle时,它也会卸载VC 2012 redist。 我想要的是,如果以前安装了VC 2012 redist,它就不能卸载它。我试图使用持久化属性设置为“是”的变量元素。但我不确定它是如何工作的。非常感谢任何指向这一点。

2 个答案:

答案 0 :(得分:4)

Bundles可以引用包含计数的包。添加Provides中的WixDependencyExtension元素,使用相同Provides元素的Bundle将更正引用计数。

不幸的是,VCRedist没有记录标准Provides密钥,因此没有真正的方法来正确引用计数包。因此,VCRedist团队希望您将其标记为永久性。

答案 1 :(得分:0)

您是否使用ExePackage元素安装redist?

如果是这样,则可以设置“永久”元素,以防止在删除捆绑时卸载它。