Advanced Installer怎么做高效?老用户分享实战使用技巧!

搞安装包的第一天就差点摔键盘

前年接了个外包活,甲方非要我打包个带数据库配置的桌面程序。听说Advanced Installer专业就下了个,结果打开界面直接懵逼——左边二十多个图标按钮晃得眼晕,工具栏里还藏了三层折叠菜单。安装教程文档厚得能当砖头,看了十页还在讲欢迎界面设置。

硬着头皮从左上角开始折腾:

  • 点"应用程序文件夹"时手滑拖了两次,生成安装包直接多出三百兆空文件夹
  • 配置注册表时把HKEY_CURRENT_USER写成LOCAL_MACHINE,测试机直接蓝屏
  • 用.NET框架检测功能忘勾自动下载,客户那边弹窗报错骂了我三天

踩坑三个月才悟出的骚操作

有天半夜改安装脚本时突然开窍:

按住CTRL键拖动文件进项目树,这货居然会自动匹配注册表类型!扔个dll进去就标记COM组件,甩个bat直接识别成自定义动作。省得在属性栏里翻十几层菜单。

现在打包数据库配置都这么玩:

  • 把初始化SQL文件拖进"安装时自定义动作"
  • 运行模式改成"隐藏窗口加延迟"
  • 条件栏塞个NOT Installed防止重复执行

比当年手动写PowerShell脚本省了两小时,生成的数据库连字符集都是对的。

血泪换来的模板大法

去年连续做同类型项目时,发现项目设置底角有个"导出为AIP模板"按钮。试着把调好的.NET 6运行环境配置存成模板,结果新项目加载后:

  • 所有路径变量自动替换
  • 数字证书签名信息保留但密码清空
  • 防火墙规则里的端口号变成空白待填项

现在电脑里存着五个模板:绿色版软件专用带ODBC驱动的要静默安装的...新项目直接套模板改三处设置,打包速度比实习生喝咖啡还快。

现在连用户骂什么都预测

上个月做升级包时发现个神器:在安装流程里插入"检测旧版"。拖个查找应用程序进序列,设置里勾"卸载找到的版本"。有次客户机残留着五年前的版本,安装时自动弹窗问是否卸载,甲方在群里夸我考虑周全。

最骚的是条件编辑器:

  • 遇到360卫士弹窗就跳过驱动安装
  • 检测到笔记本电池直接禁用性能模式
  • 磁盘剩余空间不足时把日志文件丢U盘

前些天客户说装了二十台电脑没出幺蛾子,我蹲在屏幕前直乐——全靠当初被这破软件虐出来的经验。