自动更新程序设计实现思路
来源:互联网 发布:华硕刻录机软件 编辑:程序博客网 时间:2024/05/16 02:05
自动更新程序设计实现思路
由于业务需要,以前的单个文件自动升级无法满足当前的普遍需要,必须想做一种懒人的自动升级办法,也就是每次程序启动前必须进行实时更新后才可以运行程序。
若准备让客户端程序实施自动更新,必须的前提条件是:
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码生成器的小东西。暂且先凑合用着,呵呵。
转载地址:http://blog.csdn.net/pcl666/article/details/4566957
- 自动更新程序设计实现思路
- 自动更新程序设计实现思路
- C#实现软件自动更新思路
- C#实现软件自动更新思路
- 自动更新程序的实现思路
- H5app自动更新思路与实现
- 用C#实现软件自动更新思路
- 用C#实现软件自动更新思路
- 用C#实现软件自动更新思路
- 转别人的用C#实现软件自动更新思路
- 软件自动更新思路
- 程序设计思路
- 软件自动更新功能思路与开发要点
- ATS插件中配置文件自动更新思路
- 自动更新ssi页面的思路汇总
- 程序设计思路的转变
- 程序设计初级思路
- Cardboard 程序设计思路
- 【利用命令行如何配置Windows XP系统防火墙】
- HTTP协议 (三) 压缩
- 【IE浏览器常见故障的解决方法集锦】
- 【virtualbox】 your system is running in low graphics mode
- Java基本类型转换总结
- 自动更新程序设计实现思路
- HTTP协议 (四) 缓存
- Flash Builder 4.6 升级 3.7 air sdn 的方法
- 【利用升级显卡驱动来解决win 8花屏问题】
- TQ2440实验板OV9650测试程序的详解
- java基本数据类型转换
- JavaScript:正则表达式(1)
- HTML中插入ActiveX控件
- HTTP协议 (五) 代理