2分钟实现桌面程序的自动更新

 

最近监测司CS项目有个实现自动更新的需求。Google了一下感觉使用QUpdater组建实现最为便捷。

  这个组建从这里下载:http://www.qupdater.com/cn/index.php
  此组件用VC编写,对实现语言没有限制。免费版支持同时下载2个文件,每个文件1个线程。收费版最高支持同时下载8个文件每个文件8个线程,以达到最大的更新速度。
  用法很简单,下载安装后在安装目录的QHelper.pdf说明中写得很清楚。这里只做简单说明,有兴趣的可以找我讨论。
  1.拷贝下面的5个文件到你项目的bin目录
  
 
  2.建立一个网站,并将下面的文件及你要更新的文件放在网站中,使得从URL可以正常获得你的文件
 
  3.修改qupdater.xml文件中的内容,其中var是这个文件的版本号,path是待下载的最新文件。
   <files>    
<!--action:1run,2delete,4register,8reboot-->   
  <file ver="20110312" path="UpdaterDemo.exe" />
    <file ver="20110312" path="UpdaterDemo.Core.dll" />
  </files>
  4.拷贝安装目录中Example中的C#目录的UpdateHelper.cs文件进你的项目(此处以C#为例,伟大的Javaer们可以仿照这个C#代码写自己Java版UpdateHelper),项目中我是按下面这么干的,具体项目中怎么调用你懂的:)
 
  4.验证,运行项目收到更新提示对话框,QUpdater自动更新你的文件。如果不行,把你的bin文件中的qupdater.xml中的各个文件的ver改的小一些。更新后的程序会弹出提示"更新后的程序!"
 
  下面说说原理和注意事项:
  qupdater其实就是对比你本地的和服务器上的qupdater.xml中的各个文件的ver属性。决定是否下载更新。
  bin下面的qupdater.ini是它的参数配置文件,其中全部参数都在QHelper.pdf中有详细说明。用前移动要看,其中最重要的就是
  [UPDATEINFO]    ListURL=http://218.249.92.39/AutoUpdateTest/qupdater.xml   这个是它取对比文件的链接,也是你的更新程序的来源。其它的还有文件压缩,提示模式等配置需要查看QHelper.pdf这里就不再多提了。
  实例项目我放在代码,大家可以参考。
posted on 2014-08-15 15:55  记性特差  阅读(982)  评论(0)    收藏  举报