Windows Installer:在升级期间更改安装策略,从而导致应用程序的重复副本

时间:2013-03-19 05:54:22

标签: windows-installer

我遇到了Windows Installer安装策略的问题。如果我按照每个用户/每台计算机(Just Me / Everyone)使用这些选项中的任何一个安装应用程序,然后安装具有不同选项的升级版本,则安装程序不会检测到早期版本,也不会卸载早期版本,这会导致重复的条目同样适用于控制面板。如果更改安装策略,为什么我的安装程序不检测现有安装?有没有办法欺骗安装程序正确卸载早期版本?我找到了类似的文章here,但这并没有解决我的问题。

1 个答案:

答案 0 :(得分:3)

您指的过程称为“Major Upgrade”。在此过程中,Windows Installer会在单个事务中安装新版本并卸载以前的版本(该顺序取决于您在何处安排名为RemoveExistingProducts的标准操作)。

根据MSDN,主要升级不能更改上下文(每个用户 - >每台机器或每台机器 - >每个用户)

  

注意如果在每用户安装上下文中安装了应用程序,则还必须执行对应用程序的任何重大升级   使用每用户上下文。如果安装了应用程序   每台机器安装上下文,对应用程序的任何重大升级   还必须使用每台机器上下文执行。 Windows   安装程序不会在安装上下文中安装主要升级。

您必须首先卸载每用户安装(在可能存在的所有配置文件中),然后安装每台计算机的安装。这是每用户安装通常不是最佳做法的原因之一。他们很难服务。