如何让msi安装程序在较新的版本上安装旧版本?

问题描述:

我正在设置自动部署方案。如果我们可以在服务器上放置较旧的msis并让所有客户端回滚到以前的版本,如果我们的新版本中有一个发现太糟糕了,那将非常方便。如何让msi安装程序在较新的版本上安装旧版本?

现在,msi正在嘲讽我“无法安装,因为此产品的较新版本已安装”。我可以设置什么样的属性来关闭此行为?我很乐意在后期构建vb脚本中这样做。

感谢

艾萨克

我通过将DetectNewerInstalledVersion属性更改为false来解决此问题。

它不会再唠叨这件事。

现在,使用将REINSTALLMODE设置为amus和此设置的脚本,我的msi将覆盖任何内容,而不考虑版本。

  • 是否使用你的 域组策略来部署MSI?
  • 您是否有 您的msi安装项目 Visual Studio?

无论如何,我看到一个解决方案,但不知道这是正确的你...

你需要匹配要部署回老MSI的代码。

  1. 打开匹配旧msi代码的解决方案。
  2. 使用<F4>,打开设置项目相匹配的MSI的属性窗口,
  3. 增量的版本到一个更高的数字则当前部署的一个。它会询问您是否要更改产品代码,请单击是。

alt text

  1. 重建安装项目然后部署。
  2. 由于内置的​​msi版本号较高,因此它将更新部署的版本号。

开始=>
+0

不,我没有使用组策略。我只是在一个网站上安装了msi,以及获得其版本#的web服务。 – 2010-11-19 00:59:06

+0

虽然这会工作,但我只想要一些更容易维护的东西。 – 2010-11-19 01:09:41

+0

该死的,我怕他们必须先卸载msi。要强制它们在安装任何较新版本的msi之前卸载,请将RemovePreviousVersion属性(安装项目)设置为False。 – 2010-11-19 01:17:25