您如何处理您开发的软件升级?

时间:2010-08-06 17:06:50

标签: c# upgrade

我为中型公司开发c#桌面软件,我正在寻找一种好的策略来为我的客户部署软件升级。

  • 你怎么处理这个?
  • 您使用的是Windows安装程序吗?
  • 开发我的是一个更好的选择 自定义升级程序?你有没有开发类似的东西?你有一些最佳实践可以分享吗?
  • 您是否使用其他库或 现有的软件?

由于

4 个答案:

答案 0 :(得分:3)

我开发了许多开源应用程序,其中一些是更新的,有些只是概念证明。

当决定升级软件的最佳方法时,我选择使用Visual Studio中存在的ClickOnce路由,它不仅会自动安装任何必需的.Net Framework文件,而且还可以从指定的下载更新应用程序启动时以及我自己选择的Web服务器。

我觉得这是推送我的应用程序更新的最简单方法,可能有更复杂的方法,但要记住我的应用程序是开源的,没有公司要求或截止日期我觉得ClickOnce不仅仅适用于此目的

注意:我使用C#和.Net 3.5或.Net 4编写应用程序。

链接:Choosing a ClickOnce update method

答案 1 :(得分:2)

使用WIX的Windows安装程序在升级方面变得非常简单和有能力,但是如果您在安装程序中执行任何复杂操作,您可能真的想要考虑在应用程序中构建自动更新。只要你可以依赖你的客户运行.net就可以很容易地为你做这些东西。

答案 2 :(得分:2)

或者您可以使用第三方组件Updater Component

这是documentation

答案 3 :(得分:1)

如果您正在考虑自动升级过程,我会假设您希望通过互联网或任何其他公司网络进行升级。

因此,在这种情况下,最好的办法是开发基于客户端服务器的安装程序,其中新文件(或包含此类文件的任何包)和安装脚本(可以是从批处理文件到批处理文件的任何内容)自定义编写的安装程序,您自己的安装步骤规则)将托管在服务器中,您将在客户端计算机上运行瘦客户端,只需下载软件包和脚本并开始在客户端上执行它们。

现在,您希望在安装程序引擎中执行多少“自定义”取决于您需要的灵活性。