软件升级原理 软件自动升级流程
尽管我们所见的软件升级方式各异,但是它们的原理都是一样,即用新的功能模块替换原软件中旧的功能模块,因此为了便于软件升级,要求软件在开发设计的时候应该很好地划分功能模块,做到强内聚和弱耦合。软件自动升级方式基于Internet,软件商以功能模块为单位对软件进行更新,然后通过电子邮件通知用户软件更新的消息以及增加的功能和升级的条件。用户根据自己的情况决定是否升级,升级时先通过因特网将升级文件下载到本地硬盘上,然后覆盖指定目录下的老版本文件,在升级的过程中用户只需按照向导的提示一步一步进行就可以了,确保了用户及时和正确地升级软件。
自动升级原理的具体流程:
主要分为两个部分,一个是主程序;一个是升级程序;所有升级任务都由升级程序完成。
1. 启动升级程序,升级程序连接到网站,下载升级内容到临时文件夹;
2. 升级程序获取服务器端配置信息中新版本程序的更新日期或版本号或文件大小;
3. 升级程序获取原有客户端应用程序的最近一次更新日期或版本号或文件大小,二者进行比较;如果发现升级程序的日期大于原有程序的最新日期,则更新;或者是采用将现有版本与最新版本作比较,发现最新的则更新;再或者用其它属性如文件大小进行比较,发现升级程序的文件大小大于旧版本的程序的大小则升级;
4. 升级时,获取下载文件列表,开始进行批量下载文档;
5. 升级程序检测旧的主程序是否活动,若活动则关闭旧的主程序;
6. 备份旧的主程序到备份文件夹中,删除旧的程序,拷贝临时文件夹中的文件到相应的位置;
7. 检查主程序的状态,若状态为活动的,则启动新的主程序;
8. 关闭升级程序,升级完成。