zoukankan      html  css  js  c++  java
  • c/s程序版本自动升级的问题,如何判断client端版本号是否最新,然后从指定ftp服务器down

    c/s程序版本自动升级的问题,如何判断client端版本号是否最新,然后从指定ftp服务器down

     http://blog.csdn.net/delphizhou/article/details/3078791

    1 楼Delphi_Li(Delphi Li)回复于 2002-05-23 10:47:05 得分 0

    假设客户端的程序名称为Client,那么首先再创建一个外壳程序Shell专门用来处理升级和启动Client的任务。在Ftp服务器上建立一个Ini文件保存服务器上Client程序的一些版本信息。Shell程序主要处理以下工作:读取本地的Ini文件,读取ftp服务器上的Ini,然后比较他们,如果有新版本则从FTP服务器上下载,然后运行Client,否则直接运行Clinet   
      Top

    2 楼noflybird(东方不亮西方亮)回复于 2002-05-23 10:49:20 得分 0

    你的思路应该是这样:   
      在client端有一个模块,该模块可以在程序启动或者用户想升级时检查server端是否有最新的信息,若有,指定ftp服务器down   升级文件。Top

    3 楼rwdx(忆)回复于 2002-05-23 10:59:39 得分 0

    在客户端主程序中启动时检测服务端的文件有没有更新,有的话就启动更新程序,更新程序然后关闭主程序进行更新,最后完再启动主程序Top

    4 楼lxpbuaa(桂枝香在故国晚秋)回复于 2002-05-23 11:04:46 得分 0

    我在项目中是这样做的:   
      1、在服务端建一张表,包含项目中所有文件的信息(包括版本)。我其实还加了另一表,用于保存文件下载服务器的信息。   
      2、客户端每次启动时从服务端取来她自己的版本存入注册表。然后判断,注册表的版本是不是比服务端低,如果低,则启动一个外部下载程序下载新版。   
      3、当服务端版本更新时,修改数据库的文件信息。   
        
        
      —————————————————————————————————   
      MaximStr   :=   '宠辱不惊,看庭前花开花落,去留无意;   
                                毁誉由人,望天上云卷云舒,聚散任风。';   
      if   Not   Assigned(I)   then   
          I   :=   TI.Create(Nil);   
      I.Maxim   :=   MaximStr;   
      I.Explain   :=   '假如上述代码中出现“OA”、“3D”等字样,改为“=”等';   
      I.Desire   :=   '加不加分随你';   
      —————————————————————————————————   
        
        
                
      Top

    5 楼redbirdli(火鸟)回复于 2002-05-23 11:23:40 得分 0

    为什么要维护那么多程序,浪费那么多资源呢?   
      在Client和Server上都开一个Socket,作用和应用的一样,即Client和Server   
      当Client的Socket向Server请求时,   发送去Client的版本信息(可用API   GetFileVersionInfo得到),Server接收后与Server机器某文件夹下的新Client程序比较,前者旧于后者则向此Client发送新文件,Client接收并另名保存,在关闭程序前制作并调用一个bat文件如:   
      del   client.exe   
      ren   new.exe   client.exe   
      client.exe   
      del   self.bat   
      升级成功Top

  • 相关阅读:
    10分钟轻松设置出 A+ 评分的 HTTP/2 网站
    GGSN与SGSN简介
    cocos游戏开发小白教程网站
    cocos2d-x JS 字符串
    cocos2d-x android工程接入第三方支付宝SDK
    pyCharm编辑器激活使用
    cocos2d-x C++ iOS工程集成第三方支付宝支付功能
    (已解决)在linux的虚拟机上安装vmware tools(实现windows与虚拟机之间的文件交互复制粘贴)
    虚拟机 liunx系统以 root 身份登录权限
    mac系统搭建SVN版本控制
  • 原文地址:https://www.cnblogs.com/tc310/p/5063184.html
Copyright © 2011-2022 走看看