转自:http://www.skycn.com/soft/11631.html应用程序自动升级软件(KoUpdate)是个专门提供软件升级的共享软件。它使得用户可以自动从互联网或局域网中获取最新版本的软件,使服务端与客户端软件版本保持同步。软件解决了网络管理员,为升级某一网络软件而须每台机算机逐一升级的问题,改由客户端程序实现自动侦测、下载最新版本并将其更新,从而大大减轻了管理员的维护压力,提高了软件更新的及时性。因此软件非常适用于有大量客户端,且安装有一些常用,升级频繁的软件系统的用户使用。请问:要是用vb,怎么实现?

解决方案 »

  1.   

    我的思路是这样的,在Web服务器上放一个文本文件,里面记录要升级或更新的文件的大小,安装路径,文件名称,当前版本号(或更新日期),例如:
    filename=...'第1个文件
    filepath=...
    filever=...
    filesize=...
    filename=...'第2个文件
    filepath=...
    filever=...
    filesize=...
    ...
    相应你的程序把相应文件名称、路径、版本记录在注册表或另一个本地文本文件中,当你的程序设为自动升级时,每次启动先下载这个文本文件,再在程序中对本地文件(或注册表)记录的版本信息进行对比,如果发现服务器的比较新,则提示升级,否则不升级,升级成功后把新的信息写到注册表中。你可以用inet控件实现文件的下载。我的程序就是这样实现自动升级的,好处是可以对所有文件升级,比较好用。建议要另写一个升级程序,这样可以先关闭主程序及主程序引用的dll,ocx文件升级。
      

  2.   

    关于从服务器读取信息,我可以免费把我的代码给你,我写了一个瑞星升级通知精灵,不过不要给我公开呀~~我的思路是从瑞星的网站上读取,(就是读左上角那个版本号)这比读INI要麻烦一点,INI有自己的API,我是在一个JS文件里发现瑞星的版本的~千万别公开呀,要不我就升不了级了,里面提供的ID每个只能升12次,因此,我必须第一时间直到瑞星是否升级^_^自己写不算犯法吧?千万别公开,否则后果自负!
    其他的本人同意abc10(什么时候才会有五个角?) 的说法,建议写个升级程序,把当前运行的程序关了,升级完成再打开比较好一些~下载地址:ftp://my99.xicp.net/rising.rar建议用网际快车下,我只放几天呀,快!!
      

  3.   

    如果那个ftp://my99.xicp.net/rising.rar不能下,请用下面这个地址http://myweb.public.net.cn/web/talentli/down/rising.rar
      

  4.   

    楼上几位大侠真是高人!
    谢谢abc10(什么时候才会有五个角?) 大侠!
    谢谢 TalentLi(▁▂▃▄▅ 天才的我 ▆▅▄▃▂▁)大侠!请教一下:
        “建议要另写一个升级程序,这样可以先关闭主程序及主程序引用的dll,ocx文件升级。”--比如主程序是main,升级程序是update,update怎么关闭main?特别是怎么才能关闭main引用的dll,ocx文件?     因为有时自己都不知道main引用了什么dll,ocx文件啊!请教请教!谢谢先!
      

  5.   

    主程序关了,其引用的dll,ocx也就释放了,除非还有别的程序引用。关闭程序的方法有很多,如可以用sendmessage给那个程序发消息等。
      

  6.   


    主程序shell升级程序后用end把自己结束!升级完成后升级程序shell主程序,然后用end 结束自己就是这么简单,~~~这样就不冲突了!
      

  7.   

    我的思路:
    程序采用两个部分,一个部分可以启动另外一个部分的程序,程序启动后自动检测程序的版本信息,如有,则启动升级文件程序,以后的程序过程由其完成。系统的配置文件结构如下:升级文件结构
    采用ini的结构文件
    分为以下几个部分1. 当前文件的版本号
    [版本]
    ver=1.02.升级下载文件数量  [文件数]
      FileNum=23.对应文件名称,
      注意:文件个数必须与上面声明的文件数相等,而且以下面的结构组成:
      [文件]
      File1=wom.exe
      File2=icbar.arm.CAB
      ......
      以此类推。4.对应文件下载的地址,同3的要求一样:
     [链接]
     URL1=http://192.168.0.14/down/wom.exe
     URL2=http://192.168.0.14/icbar.arm.CAB5.文件的大小
     对应文件的大小
     [文件大小]
     FileLen1=12002
     FileLen2=1890006 特殊操作步数
      [操作]
      文件数=127 具体操作
      [升级]
      File1=MSCOMCT2.OCX,$(WinSysPath),$(DLLSelfRegister)
      File2=MSCOMCT2.OCX,$(WinSysPath),$(DLLSelfRegister)
      File3=MSCOMCT2.OCX,$(WinSysPath),$(DLLSelfRegister)