代码之家  ›  专栏  ›  技术社区  ›  JayTee

考虑更新时的.NET解决方案安装建议

  •  1
  • JayTee  · 技术社区  · 17 年前

    我已经编写了一个winforms应用程序,它作为安装程序/msi安装部署。不使用ClickOnce部署的主要原因是:

    1. 需要在应用程序目录中存储持久数据
    2. 需要能够为“所有用户”安装

    我正试图遵循有关MSDN的建议/教程,以便有一个更新机制: http://msdn.microsoft.com/en-us/library/aa367564.aspx

    我的印象是,使用一个.exe并不一定是最好的方法。我想知道在创建.dll库和将我的应用程序类放在项目中的.cs文件中是否有“经验法则”?

    更新是否可以像替换某些.dll文件而不是.exe文件一样简单?

    2 回复  |  直到 17 年前
        1
  •  2
  •   Daniel Pratt    17 年前

    总的来说,我同意大白北给出的答案,重申一下,答案是:

    1. 有充分的理由将任何重要规模/功能的应用程序分解为单独的项目/组件。

    我另外强烈建议您不要在Windows Installer安装程序包(即VS部署项目生成的内容)和所谓的“xcopy部署”(即在需要的地方复制程序集)之间混用和匹配。如果您“xcopy”更新了由Windows Installer软件包安装的文件,Windows Installer可能会尝试为您“修复”。

    据说可以创建Windows Installer“修补程序”,其中只包含/更新更改的文件,但我从来没有一个好的理由尝试让它工作。无论如何,我相当肯定这超出了VS部署项目的能力。

        2
  •  0
  •   The Great White North The Great White North    17 年前

    一般来说,我的“经验法则”是根据功能将解决方案分解为项目。这有助于测试和其他事情。

    在更新方面,它似乎来自 this article on MSDN

    推荐文章