TRUEUPDATE升级系统

     在线更新系统对于现代软件来说太重要了,这里介绍用一家加拿大公司出品的TrueUpdate构建你的升级系统.TrueUpdate是使用lua来应付复杂多变的升级业务。 升级简单流程是这样的:运行trueupdate客户端,下载升级脚本,执行脚本,脚本里面执行下载补丁。

不多说了,直接给出我的方案:

   
系统规划:
1.proj1 // 升级项目
    
     sid1  // 升级项目id
    
     client_script // 升级客户端脚本,基本不会变
        
     current_version
         version_id_current  // 版本id
         server_script_current // 升级服务端脚本,随着升级,不断更新
         patch_current // 当前补丁,随着升级,不断更新
    
     
     version1
         server_script1
         patch1
     version2
         server_script2
         patch2   
        
     目录结构(ftp://192.168.1.134/true_update):
       
        update_client.exe
        sid_version_id_client_script.tu
        sid_version_id_server_script.tu
        sid_version_id_patch.zip
       
        .......
       
           
 
 proj2 (sid2)
     ....
    
    
升级流程:

     程序启动;
     if ( current_version < server_version )
     {
       
        调用update_client.exe;
        执行下载sid_version_id_server_script.tu;
        运行sid_version_id_server_script.tu;
        下载补丁id_version_id_patch.zip;
        current_version = server_version;
        提示用户升级成功;
     } 
    
     正常启动;  
    
    
表结构:

create table proj
{
   sid,
   client_script,
   version_id_current,  // 版本id
 
  
};

create table version
{
   sid,
   version_id,
   script_server,
   patch
}   
    
      
get_latest_version.aspx(client_sid)
{
      select version_id_current from proj where sid=clent_sid;
      return version_id_current;
}                

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Tiger Update控件使用指南 Tiger Update是Tiger Installer安装制作软件附带的一个控件,它可以帮助 你轻松地在你的软件上加入自动更新功能。这个控件是免费而且开放源代码的。 Tiger Update实现自动更新实现的原理如下: 1. 通过Tiger Installer制作安装程序和升级包 2. 在一个Web Server上增加一个取得最新版本的链接和一个下载升级包的链接。 3. 软件通过Tiger Update组件取得最新版本和调用升级升级。 Tiger Update控件的安装 1. 用Delphi(6/7)打开TigerUpdate60.dpk,编译安装 2. 点击Delphi的菜单"Tools->Environment Options.."进入 Environment Options..对话框,在Library页面中把Tiger Update控件所在的 目录加入到Library Path中 3. 安装完毕。 Tiger Update控件的属性和方法 property Version : String; 软件的当前版本。 property VersionURL : String; 取得最新版本的URL。 property DownloadURL : String; 下载升级包的URL。 property LatestVersion : String; 最新版本。 function Download : Boolean; 下载升级包,并且执行升级。 安装程序和升级包的制作 安装程序和升级包制作参考Tiger Installer使用指南,通过菜单“文件->新建->本项目升级包”就可以创建当前项目的升级包。升级包会和原来的安装融合在一起,卸载以后原来安装的对象和历次升级包安装的对象都会被清除干净。 Tiger Update自动更新的流程 首先从LatestVersion取得最新版本,然后和现有版本比较,如果最新版本比现有版本新就执行Download方法更新软件。注意,执行安装包的时候会等待主程序结束,防止不能更新主程序的情况发生,所以在执行Download方法后如果返回值是True表明更新下载成功,升级包已经启动,主程序必须马上关闭,升级包会等待10秒钟,超过了10秒将会报超时错误。 范例: 在需要强制更新软件的情况下(比如某些C/S系统,为了保证数据安全,所有客户端的版本必须是最新的),可以在主程序的Dpr文件加上下面的代码: //以下的代码适合需要强制升级的情况 with TTigerUpdate.Create(nil) do begin try VersionURL := 'http://127.0.0.1/Update.asp?Command=Version'; DownloadURL := 'http://127.0.0.1/Update.asp?Command=Download&Version=<VERSION>'; Version := '1.01'; if (LatestVersion > Version) and Download then Exit; finally Free; end; end; //////////////////////////////////////// 这样每次主程序运行都会检查并更新程序 Web服务器的Asp范例 <%if request("command") = "Version" then if now >= "2005-3-27 00:00:00" then response.Write("1.01") else response.Write("1.00") end if else if request("command") = "Download" then if request("version") >= "1.00" then Response.Redirect("http://127.0.0.1/Update.exe") else Response.Redirect("http://127.0.0.1/Update.exe") end if end if end if %> 上面这个简单的Asp可以根据用户设定的更新时间更新软件,同时还可以根据客户端的版本提供不同的升级包。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值