是否可以集成到“Windows Update”中来升级您自己的应用程序?

时间:2010-02-28 13:06:34

标签: windows

是否可以集成到Windows更新中以更新您自己的应用程序?

我听说过“ClickOnce”,但是据我所知,到目前为止;应用程序开发人员仍有责任管理更新。

我正在尝试类似的用户体验,以了解最终用户如何在Linux发行版中更新应用程序,例如: ubuntu中的更新管理器。应用程序和系统更新集中在哪里。

我知道你可以更新例如;办公室,SQL服务器等。因此,您可以对非核心系统应用程序进行更新。但当然这些都是微软的应用程序,第三方有没有办法做类似的事情?

2 个答案:

答案 0 :(得分:8)

无法集成到Windows的实际“Windows更新”功能中,但是如果您愿意,可以为您的更新系统使用相同的基础技术。

它被称为Background Intelligent Transfer Service(或BITS),并附带API,您可以使用它来让您的应用程序利用它来进行自己的更新。您仍然需要自己完全管理更新过程,BITS只负责更新的限制后台下载。还有一个 BitsAdmin工具,可用于管理BITS流。

除非您正在编写一个非常大的应用程序,否则在尝试使用BITS之前应该认真思考,这不是一个简单的“点击进入”设置过程,您必须自己管理大部分更新过程代码。

另一方面,ClickOnce(如rjh已提到的那样)相当简单,只需定义一些基本参数,如版本和更新URL,ClickOnce引擎将自动处理检查,下载和安装更新,您所要做的就是将它们发布到服务器。 ClickOnce有一些限制,但对于大量应用程序,ClickOnce可以很好地工作。对于标准的ClickOnce部署,没有可编写的代码,它们都通过visual studio界面处理。

答案 1 :(得分:5)

Windows Update(和Office Update)是Microsoft运行的,虽然允许第三方(如nVidia和Intel)用于驱动程序更新,但它不是一个开放平台。没有Windows等效于Ubuntu / Debian的APT存储库或第三方存储库。

ClickOnce可能会做你需要的。您必须通过将新版本的应用程序上传到网络服务器来“管理更新” - 无论系统如何,都不确定如何避免这样做。当用户启动您的应用程序时,ClickOnce系统会检查新版本并自动下载。比实现自己的更清洁 - 必须有不同的Windows开发人员编写的数千种不同的更新系统!

ClickOnce允许大量自定义 - 用户可以选择何时或是否希望更新其应用。开发人员可以将更新设置为可选或强制,并且可以合理地确保他们的整个用户群将升级到最新版本(对于安全修复程序等)。还有一个API,因此您可以更精细地控制更新过程。

相关问题