读书人

Delphi自动升级怎么实现?(压缩解压缩

发布时间: 2013-11-11 14:02:17 作者: rapoo

Delphi自动升级如何实现?(压缩解压缩)
最近程序要试运行了,每次升级都要去每个地方跑一边太麻烦,想做一个自动升级的功能,然后每次有更新,客户端必须先更新才能使用软件。
小的也在网上找了一些示例,但是因为技术不到家,都没有试验成功。所以肯定各位前辈们,可否指点一下小弟Delphi自动升级怎么实现?(压缩解压缩),分分大大的有,只要能成功哇。
俺想的思路是,服务器某个地方存放一个.rar或是.zip压缩包,内容是最新版程序需要用到的东西(包括.exe;.ini还有一些必须的文件夹等,就是整个程序运行环境目录)。每次用户打开客户端的时候,先检验一遍服务器是否有最新版本,如果有,下载最新程序,删除原有程序,解压最新程序,删除自身.exe。如果没有,允许用户正常登录系统。
服务器可以是http协议的网址,也可以是ftp站点。升级时也可以用扫描客户端自身文件结构,与服务器目录结构比对的方式,但是感觉压缩包更简单一些。
谢谢各位大大Delphi自动升级怎么实现?(压缩解压缩) Delphi自动升级
[解决办法]
你这种方式不太好,个人建议还是对比目录结构好些,不需下载大量文件。
[解决办法]
要想简单,建议在发布时用打包工具制作成安装包,当有新版发布时,程序检测下载新安装包,调用新安装包安装,完了

在打包工具里先定义好哪些是更新保留的,哪些是强制更新的


[解决办法]
压缩包倒也不是不可行的,之前一家公司就是用7z做的.有几千万的装机量,用的还挺好的.
一般你可以在服务器上放一个配置文件,XML,INI都行.里面是最新的版本号和下载链接.
下载回来解压覆盖就行了.
网络可以用Indy,就简单,现成的拿来用就行了,代码也没几行.支持FTP和HTTP.
解压有两个方案选择:
a.带个7z的DLL,调用它来解压.或者用VCLZIP之类的控件.
b.你的压缩包做成自解压的.下载回来执行就行了.

读书人网 >.NET

热点推荐