自动更新程序设计实现思路

自动更新程序设计实现思路

 

        由于业务需要,以前的单个文件自动升级无法满足当前的普遍需要,必须想做一种懒人的自动升级办法,也就是每次程序启动前必须进行实时更新后才可以运行程序。

         若准备让客户端程序实施自动更新,必须的前提条件是:

     1. 专用更新服务器支持。

     2. 客户端每次启动的时候都检查更新。

   

     详细的分,应该如下:

    

     服务器端:

         1自动更新服务器可单独架设,也可和其他服务器一起使用。

         2 自动更新服务器必须维护一个更新列表。比如说是Update.XML。列表内维护需要监视更新的文件名称,版本号。

         3 服务器端必须可以根据目录内文件内,自动生成Update,XML文件。

 

        客户端:

        1.      客户端每次启动前都必须检测服务器当前版本号,务必使每次更新后及时的进行更新至最新版本。

        2.      客户端自动更新在主程序之前运行,自动连接到服务器,并下载服务器的文件列表。

        3.      将下载的文件列表与本地列表相比较,若有不同,则自动更新不同的内容。下载至临时目录。下载完毕后复制到程序目录。

为了证明以上思路是否可行,必须拿一个现成的自动升级来分析分析.正好今日在玩一款游戏,暂就拿他分析分析看看这款游戏是如何做的自动升级.

自动升级——

 

服务端维护一个程序全部的列表,程序自动将服务端的列表下载到本地,并且读取文件名和mod5

例如:http://update3.gc73.com/update/gamecity/lobby/files.dat

 

 

在服务器维护了一个完整的安装包,安装包内涵盖了全部升级所需要的文件。。。。

 

基本上升级的事情已经分析的差不多了。。。。

1.      客户端启动游戏的时候,首先启动的是自动升级的程序,自动升级的程序自动到网站上下载一个全部文件的列表表单和MD5码。。。

2.      通过分析和比较以上MD5是否相同,如果不相同就调用自动升级。。。。

3.      自动下载到指定的目录下,然后关闭自动升级,并且同时启动主程序。。。。。

 

网站更新目录:

http://update1.gc73.com/update/

列表表单

http://update3.gc73.com/update/gamecity/lobby/files.dat

 

文件及说明

文件名称

文件说明

 

CompeteResult.run

CompeteResult.exe

必须传递参数才可以运行。Windows对话框程序,程序带资源。

Game.conf

可用记事本打开

游戏记录信息

[游戏ID]

游戏路径

执行程序名称

游戏URL地址

游戏URL地址_WT问题?

检查更新次数

强制更新次数

玩家满人人数

Ins_ver.dat

可用记事本打开

记录更新文件名称???

lineselect.dat

可用记事本打开

行选择???

Lobby.exe

自动更新程序

自动更新程序

Lobby.run

Lobby.exe

客户端主程序

Login2.dat

可用记事本打开

 

Login.dat

可用记事本打开

记录登陆用户名

Server2.dat

可用记事本打开

服务地址和端口

Server.dat

可用记事本打开

服务地址和端口

Serverrpp.xyz

记事本

记录类似MD5数据集

Setkey.dat

可用记事本打开

未知

Unin.exe

应用程序

未知

Uninst.exe

反安装程序

卸载程序

Update.dat

可用记事本打开

自动升级网络地址

UpDate.p

未知

更新辅助程序

Updatetime.dat

记事本

更新程序时间

url.conf

记事本

网址记录集

url.dat

记事本

网址

 

   咱已经把本地文件和网络文件统统都分析了一个遍,现在要做的就是动手去写,去实现。当然,如果能少写个工具最好了。我记得安装同花顺软件的时候下载过一个MD5码生成器的小东西。暂且先凑合用着,呵呵。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
设计电赛送药小车程序需要考虑以下几个方面: 1. 机械设计:需要设计一个可以运载药品的小车,并搭载传感器和电子设备,以便于实现自动化控制。 2. 控制系统设计:需要设计一个控制系统,包括小车的驱动、传感器和电子设备的控制等。可以使用Arduino或者树莓派等开发板进行控制。 3. 路线规划算法:需要设计一个路线规划算法,根据订单地址和药品库存情况规划小车的路线,使得小车能够在最短时间内完成配送任务。 4. 通信系统设计:需要设计一个通信系统,使得小车能够实时与中心服务器进行通信,以便于获取订单信息、发送配送状态等。 5. 安全保障:需要设计一些安全保障措施,确保小车在行驶过程中不会出现安全问题,例如紧急停车、避障等。 基于以上考虑,可以设计如下的电赛送药小车程序: 1. 机械设计设计一个小车底盘,配备四个马达,可以实现前进、后退、转弯等运动方式。在小车底盘上安装一块可以运载药品的平板,以便于运输药品。在小车上安装一些传感器,例如红外线传感器、超声波传感器等,以便于实现避障和跟随等功能。 2. 控制系统设计:使用Arduino或者树莓派等开发板进行控制。使用电机驱动模块控制小车的驱动,使用传感器模块获取小车周围的环境信息。使用RFID读写器读取订单信息,并将该信息发送到中心服务器。 3. 路线规划算法:根据订单地址和药品库存情况,使用A*算法或者其他路线规划算法规划小车的路线。在行驶过程中,使用红外线传感器和超声波传感器等传感器避免碰撞。 4. 通信系统设计:使用WiFi或者蓝牙等通信方式,将小车与中心服务器进行连接。中心服务器可以发送订单信息到小车,小车也可以将配送状态发送回中心服务器。 5. 安全保障:在小车周围安装一些传感器,例如超声波传感器,以便于检测到障碍物。 综上,以上是一个电赛送药小车程序的设计思路,可以根据实际情况进行调整和优化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值