0

在我的工作场所,我们现在正处于从 VS 2010 迁移到 VS 2012 的过程中。
在我开始测试应用程序的部署之前,一切似乎都很顺利。

你们中的一些人可能知道,安装项目在 VS 2012 中已停止,而 ClickOnce 部署取而代之。
挑战在于,在使用 VS 2012 ClickOnce 部署后,正在安装的软件被识别为新产品,而不是现有产品的更新版本。

我的问题是:我应该怎么做才能确保软件的新部署将取代旧安装?

4

1 回答 1

0

对于 googlers:
在 Click-Once 未能提供所有必需的功能后,我决定使用 Installshield 限量版(一些详细信息可在此处此处获得)。

为了确保软件的新部署将替换旧安装,需要执行以下步骤(基于 Cosmin Pirvu 的回答):

  • 使用Orca打开旧的 MSI并从属性表中获取其UpgradeCode
  • 在您的 InstallShield LE 项目中,转到解决方案资源管理器中的“一般信息
  • 确保“升级代码”字段设置为您的旧 MSI 升级代码(您可以在此处阅读有关升级的更多信息)
  • 确保ALLUSERS属性具有与旧 MSI 相同的值(这是相同的方法)。
  • 转到 Installshield组织您的设置->升级路径部分。右键单击升级路径并选择新升级路径
    在打开的对话框中,找到以前版本的 .MSI 文件并将其打开。它将自动导入升级代码并提供字段,您可以在其中指定应使用新安装程序替换的先前版本范围。
  • 仍然在升级路径部分,确保提供适当的最小/最大版本。

编辑:

  • 对于以后的每次更新,请确保在“一般信息”部分中推进产品版本(不要更改升级代码)。

  • 确保在Release > Express部分中,Generate package code设置为 Yes,或者在每次发布时手动更改它。

于 2013-06-17T10:33:55.330 回答