以前做过一个自动更新平台.net+SQLServers实现的程序分客户端,和发布服务端。
原理:客户端首次安装注册IP,设备名称,MAC地址,记录到数据库表。发布服务端,上传需要发布的文件,压缩成二进制上传到数据库。发布文件的时候可以指定到哪些设备可以允许更新。及指定设备更新到指定版本。客户端登录时判断更新,如果更新则从数据库读书二进制,再解压到指定路径。
原理很简单,但是做起来的时候,需要注意的细节问题太多太多。比如生成桌面快捷方式,有些回滚删除本地多余的文件,等等...
而昨天又花了一天时间用另一种思维来实现了一遍。发布服务端指定一个文件夹[AutoupdateFolder]并设置为共享,发布服务端,上传文件到指定文件夹(上传发布前,将上次发布的文件备份到指定的备份文件夹),标记本次版本的版本号,并设置允许哪些设备更新,生成xml文件放到指定位置。
客服端访问发布文件夹。判断是否在允许更新的范围,如果需要更新,则Copy文件下的所有文件到本地(Copy之前先备份)。
发布设置
程序启动过去更新
测试通过。
第一次写博文,文采不好。以后每周坚持写一篇。
如有共同写交流学习的朋友欢迎一起交流学习。(邮箱[email protected])
时间: 2024-10-07 00:05:45