使用 advanced installer 为 winform 做自动更新

advanced installer 是一款打包程序,基于 windows installer 并扩展了一些功能,比如安装统计,自动更新,授权验证等,本文将介绍你如果使用 advanced installer(以下简称 ai) 为 winform 做自动更新。

  1. 打开 ai,将你的项目文件拖到此处,再进行些基础的配置。直到能够生成基础的安装包。

  2. 开始配置更新,点击到 updater 选项卡,选中 ‘enable advanced installer updater’。

  3. 上一步配置好后,切换到项目文件选项页,发现列表中多了两个文件,一个是 updater.exe,一个是 updater.ini updater.exe 用于执行更新 updater.ini 是更新的配置文件

  4. 点击 build,生成安装包

  5. 接下来配置更新服务器,图样图森破。再开与一个 ai 实例,新建一个 updater config 的项目。

  6. 配置服务器相关内容。

  7. 配置完成后点击 build,仅仅会生成 updater.ini 。这个配置文件不同于第三步生成的配置文件,这是服务器需要的配置文件,需要分别清楚。

  8. 将 updater.ini 放到服务器上,在将第四步生成的安装包与 updater.ini 放在一起。

  9. 能成功到这一步的要恭喜,因为你马上就要成功了。

  10. 测试无更新。安装第四部生成的包,成功后,进入安装目录确认下 updater.exe 和 .ini 两个文件是否存在,点击 updater.exe 后应该会弹出 ai 的更新提示,此时因为两者版本一样,应该会提示没有更新的。

  11. 测试有更新。我们在回到第二步,将 version 改一下,在点击 build,记住,此时会弹出框让你选择是否更新 productcode,选择更改,因为咱们现在在做安装包形式的更新,需要更换 productcode,如果要做 patch 类型的更新,则不需要。

  12. 再打开 updater config 的项目,重新关联下上一步生成的安装包,此时版本会刷新,然后再手工修改下 target version,改到最新的版本,target version 是判断客户端是否更新的依据,如果客户端的版本不是 targer version,那么客户端就会更新。