背景
给其他部门的小伙伴开发一个工具,使用的是 PyQT6 + Nuitka 制作的单个 exe 小工具。
后面可能要经常修改更新,所以想要试着做一个自动在线更新的功能。
我的想法
目前的思路是:
- 主窗口开启前,检查公网服务器的 version.json 信息,和当前版本对比,判断是否需要更新。
- 如果需要更新,把放在服务器上最新的 exe 下载下来。
- 把 bat 脚本内容写到名为 update.bat 文件中,通过 subprocess.Popen 来启动这个 update.bat 文件。
- update.bat 主要执行替换和启动新版本软件的操作。
现在按照这个思路,基本已经实现了(下载新版本+替换),但是 update.bat 里面 start "" "app.exe",不知道为啥,始终无法成功执行。
想请教的是,业界标准的做法是啥,有什么可以参考的项目么?