自动更新程序设计实现思路
由于业务需要,以前的单个文件自动升级无法满足当前的普遍需要,必须想做一种懒人的自动升级办法,也就是每次程序启动前必须进行实时更新后才可以运行程序。
若准备让客户端程序实施自动更新,必须的前提条件是:
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/
列表表单
自动更新程序设计实现思路
由于业务需要,以前的单个文件自动升级无法满足当前的普遍需要,必须想做一种懒人的自动升级办法,也就是每次程序启动前必须进行实时更新后才可以运行程序。
若准备让客户端程序实施自动更新,必须的前提条件是:
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/
列表表单