如何通过MSI升级WIX引导程序包安装程序,反之亦然?

6

情况:

我有一个基于WIX的引导程序安装程序,它安装了我的msi包和(某些)先决条件(.NET)。安装程序是.exe格式的,它可以正常工作。

现在,一些客户想要安装msi,特别是在他们可以集中推送的企业环境中。

看起来很容易,只需给他们msi。同样,它也可以正常工作。

现在,问题来了。

当应用程序从MSI安装后,稍后又从.exe安装程序升级到新版本时,将会有两个ARP条目。反之亦然——当应用程序从.exe安装,并从MSI升级时,双重ARP条目也会再次出现。

是否有任何简单/标准的解决方案?


你最终解决了吗?我有完全相同的问题。我想使用Bootstrapper安装并使用msi升级,而不必在ARP中有两个条目。这可能吗? - nozzleman
1个回答

2
为了保持Bundle可见,MSI不可见,您可以选择以下两种方式之一:
  • 像Bundle一样安装升级,通过向msiexec传递ARPSYSTEMCOMPONENT=1,或者
  • 更改您的MSI产品,使其默认情况下为不可见:<Property Id="ARPSYSTEMCOMPONENT" Value="1" />
(在您的Bundle中,MsiPackage/@Visible似乎有效地是“否”,这是默认设置。)

谢谢,汤姆。但是似乎我不太擅长解释我的问题。我已经有了“Bundle: visible, MSI: not visible”。但是当用户从普通的MSI升级现有安装时会出现问题。 - Kaido Kärner
是的,所以要么告诉用户如何运行msiexec,要么更改MSI,使其默认情况下不可见。 - Tom Blodget

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接