gpt4 book ai didi

.NET MSI 安装项目 - 覆盖以前的版本

转载 作者:行者123 更新时间:2023-12-04 08:28:47 24 4
gpt4 key购买 nike

我有一个安装 Windows 服务的 MSI 安装程序项目。
这篇文章最好地描述了我的版本编号方法:What are differences between AssemblyVersion, AssemblyFileVersion and AssemblyInformationalVersion?
我没有改变我的安装项目的版本,因为它没有改变,而且我在这样做时遇到了太多问题。
我已经使用以下程序集版本安装了我的服务

[assembly: AssemblyVersion("4.3")]
[assembly: AssemblyFileVersion("4.3.0.0")]
我刚刚为此版本构建了一个 MSI 安装程序:
[assembly: AssemblyVersion("4.3")]
[assembly: AssemblyFileVersion("4.3.1.0")]
当我运行 MSI 时,它告诉我需要卸载以前的版本。
我该如何解决这个问题?我最终想做的是:
  • 安装 MSI
  • 安装(重新:升级到)覆盖先前版本的另一个版本(提示或无提示)
    一种。我不想在安装更新之前卸载。

  • 我的安装程序项目属性是:

    RemovePreviousVersions - True

    InstallAllUsers - True

    DetectNewerInstalledVersion - False

    Version - 4.3.0


    我尝试过的:
  • 更新项目的程序集版本。但是,这会在“添加删除程序”中创建相同产品的多个版本。不想要我想要的windows服务
  • 更改安装程序项目的版本号。但是在尝试安装任何版本的 MSI 时,这会产生很多错误。我什至收到警告说我正在网络驱动器上安装! (哇)。

  • 任何帮助都会摇滚!
    谢谢。

    最佳答案

    在设置的设置项目属性中,您需要为每个版本增加“版本”属性,同时保持相同的升级代码。

    当您增加版本时,它会提示您是否要更改产品代码,回答"is"。

    您还必须将删除先前版本和检测新版本的属性设置为 true。

    关于.NET MSI 安装项目 - 覆盖以前的版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7856454/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com