4

我正在使用 VS 2010 中的安装项目来安装我创建的 Windows 窗体应用程序。安装项目运行良好,但是,如果我更新应用程序并更改安装项目的版本号和升级代码,当安装项目再次运行时,它不会更新用户机器上的应用程序。它将通过安装步骤并说安装成功,但是,用户计算机上的应用程序仍然完全相同,而不是较新的版本。奇怪的是,如果您再次运行安装项目,则会出现一个错误,提示此版本的应用程序已安装,您必须使用添加/删除程序删除当前版本才能继续安装。以前有没有其他人遇到过这个问题。

4

2 回答 2

7

您不应该更改UpgradeCode属性,这将产生您所看到的效果:

警告

只应为第一个版本设置UpgradeCode 它不应该针对应用程序的后续版本进行更改,也不应该针对不同的语言版本进行更改。更改此属性将使DetectNewerInstalledVersionRemovePreviousVersions属性无法正常工作。

(通过https://wayback.archive.org/web/20121029130031/https://msdn.microsoft.com/en-us/library/465253cd(v=vs.100).aspx

假设您要删除旧版本并将其替换为新版本(而不是将它们并排安装,这实际上是您正在做的),您应该更改Version(MSI 和文件( s) 正在更新) 和ProductCode(MSI) 并设置RemovePreviousVersionsTrue.

于 2013-04-19T17:30:32.250 回答
0

我遇到了同样的问题。
我决定改变这四个。
(我使用了 Visual Studio Community 2019)

[设置项目]
・版本

[.Net 项目]
・Assembly 版本
・Assembly 文件版本
・GUID

更改装配信息

于 2020-07-17T17:11:27.457 回答