这是一款基于NSIS(Nullsoft Scriptable Install System)的自动化安装包更新工具,能够帮助开发者和用户轻松实现软件的在线检测与自动更新功能。
通用自动更新NSIS安装包程序会检查本地的配置版本与服务器上的配置版本,并在确认服务器有新版本后下载并替换文件。该程序需要结合使用NSIS安装包进行操作,升级时采用/S静默模式完成安装。
此程序仅支持对一个主应用程序和一个插件的应用更新。所有主要设置均可通过提供的配置文件来修改,同时附带源代码以及简要的逻辑说明文档以供参考。
具体的工作流程如下:
1. 当CommonAutoUpdate启动后,首先会检查并加载本地的配置文件;
2. 如果run字段中指定的应用程序正在运行,则给出错误提示,并退出更新进程;
3. 若应用程序未在运行状态,将尝试从服务器地址svrurl + /commonAutoUpdate.xml获取最新的配置信息。如果在此过程中出现任何异常情况,会显示“检查自动更新失败,请稍后再试”的消息并终止执行。
4. 如果成功加载了远程的配置文件,则程序会比较本地版本号与服务器端提供的新版本号;
5. 若检测到当前安装版已是最新或二者相等时,将直接运行run字段中指定的应用,并传递参数“cau”作为标记;
6. 当发现有更新存在(即服务器上的版本大于本地已有的),会弹出提示用户进行软件升级的界面。点击确认后开始下载新程序包;
7. 下载完成后退出当前进程,然后执行刚刚下载的新安装文件以完成整个更新流程。