jielittleboy 发表于 2024-11-13 18:57

开发的软件如何更新?

本帖最后由 jielittleboy 于 2024-11-13 18:58 编辑

我目前用的方法是使用另外一个程序:update.exe,结束main.exe后再来操作覆盖主体main.exe文件,最后再启动main.exe,但觉得这种方式有点傻。
发现很多通用软件里并没有类似额外的专门升级程序,而只有一个主体exe。
请教大家开发的软件一般是怎么更新的,特别是更新自身main.exe(运行时被占用,无法覆盖自身)。目前主流的方式是怎样的?

Kuukyaku 发表于 2024-11-13 18:57

楼上正解。main.exe联网检查更新,发现有更新并且用户同意更新之后从网上下载update.exe到临时文件夹(%temp%或%appdata%),然后运行update.exe覆盖main.exe;更新完成后再运行main.exe时把update.exe删除。刚刚亲测了QQ更新就是如此,会下载一个QQ-x.x.xx-xxxxx-win64.exe到C:\Users\xxx\AppData\Roaming\QQ\packages\full,甚至更新程序运行时会提醒你关闭QQ,就是防止占用。

flyer_2001 发表于 2024-11-13 19:07

可以参考chrome,qq,微信等都是这种,可以看下

风之暇想 发表于 2024-11-13 20:01

看似没有update.exe,升级时释放到临时目录而已。
页: [1]
查看完整版本: 开发的软件如何更新?