我使用部署项目模板通过 Visual Studio 2010 创建了一个 MSI。它曾经可以工作,但现在它在安装较早版本时开始起作用 - 即升级。我已设置RemovePreviousVersions
为 true,但实际发生的是它在安装新版本后删除了“以前的”版本,也有效地删除了新版本。在MSI 日志文件中,我看到了这方面的证据。(请随意检查)
正常的安装过程不应该是1.卸载以前的版本,2.安装新版本吗?有人对此有任何解释吗?
我使用部署项目模板通过 Visual Studio 2010 创建了一个 MSI。它曾经可以工作,但现在它在安装较早版本时开始起作用 - 即升级。我已设置RemovePreviousVersions
为 true,但实际发生的是它在安装新版本后删除了“以前的”版本,也有效地删除了新版本。在MSI 日志文件中,我看到了这方面的证据。(请随意检查)
正常的安装过程不应该是1.卸载以前的版本,2.安装新版本吗?有人对此有任何解释吗?
我不确定这是否是一场比赛,但你表示它是。当您将项目从 VS2008 移动到 VS2010 时,安装项目功能的 VS2010 版本中存在一个错误。引用知识库文章:
出现此问题的原因是在 Visual Studio 2010 中创建 GUID 时使用了不同的哈希算法。当您安装从 Visual Studio 2010 安装项目创建的 MSI 文件时,MSI 文件确定 GUID 已更改并删除文件和基于项目顺序的安装路径的注册表项。
在这种情况下,安装路径的文件和注册表项会意外消失。
它有一个修补程序,请按照知识库文章链接进行下载和使用说明。