AutoTrigger:开源的 Windows 离线安装自动化工具(GUI+CLI,自动操作安装向导)

0 阅读3分钟

我开源了一个工具:把 Windows 安装包丢给它,剩下的交给自动化

做测试环境、安全研究或者企业内网运维的朋友大概都有这种痛苦:手里一堆安装包,一个个双击、点下一步、点完成,装完还要截图留证。Windows 又不像 Linux 有 apt/yum 那样的静默安装生态,各家安装器五花八门。

所以我把这段时间打磨的工具开源了:AutoTrigger,一款面向 Windows 的离线软件安装自动化工具。

仓库地址:github.com/pengchengyi… 下载:github.com/pengchengyi… (MIT 协议,单文件 EXE,不需要装 Go)

在这里插入图片描述

它能做什么

把一个安装包(或整个文件夹)交给 AutoTrigger,它会:

  1. 自动识别安装器类型——Inno Setup、NSIS、MSI、WiX Burn 等常见格式都有内置适配;
  2. 自动操作安装向导——点"下一步""接受协议""安装""完成",遇到自绘界面还可以用图像模板匹配(截图 → 标记按钮区域 → 后续自动命中)兜底;
  3. 采集安装证据——安装前后做基线快照对比,输出结构化结果 JSON,明确区分"装成了 / 疑似装成 / 装了一半 / 本来就装着 / 没装成"。

在这里插入图片描述

实测数据(不吹牛版)

管理员会话,Windows 10.0.26300 x64,22 个真实安装器:

类别输出"安装完成" / 样本数占比
Inno Setup4 / 580.0%
NSIS5 / 5100.0%
MSI5 / 683.3%
WiX Burn2 / 366.7%
其他厂商安装器2 / 366.7%
合计18 / 2281.8%

其余 4 个为"部分完成"。必须强调:这些数据来自历史构建,不代表最新版对所有软件的兼容率;任务结束或退出码为 0 不等于安装成功,请以结果 JSON 的状态、证据和日志为准。

几个设计上比较讲究的点

  • 证据分级判定:不是看"进程退出"就宣布成功,而是安装前后快照对比 + 证据分级 + 反证据仲裁,给出高/中/低置信度;
  • 活动感知超时:有进展就不计时,不会误杀装得慢的大软件;超时先优雅关闭再清理进程树,证据照常采集;
  • 异常路径也有完整输出:超时、中止、崩溃照样写可解析的结果 JSON,第三方脚本可以直接消费;
  • 离线可用:7-Zip 和 OCR 依赖从随包的离线物料自动部署,全程不联网;
  • 双入口:GUI 点选上手,CLI 参数语义和输出契约稳定,方便接入脚本。

在这里插入图片描述

快速开始

  1. 解压交付包到可写目录(保留随包依赖物料);
  2. 双击 AutoTrigger.exe,系统级安装建议右键"以管理员身份运行";
  3. 首页点"检查环境",缺的 7-Zip / OCR 会从离线包自动部署;
  4. "新建任务"选文件或文件夹,运行;
  5. 任务列表看详情:实时日志 + 结果 JSON。

命令行:

.\AutoTrigger.exe --check-prereq --json
.\AutoTrigger.exe --input "D:\安装包\setup.exe" --output "D:\结果\result.json"
.\AutoTrigger.exe --help

几句安全方面的实话

  • 遇到 Defender 等安全软件告警,先核对来源和 SHA-256,不要无脑加白名单——工具不保证所有安全产品都不告警;
  • UAC 弹窗需要人工确认,工具不会绕过系统安全机制;锁屏和 UAC 安全桌面下不能保证自动化;
  • 建议在专用虚拟机/快照环境里跑,别在日常主力机上批量装东西。

最后

项目 MIT 协议,源码、架构说明、结果 JSON 字段说明、图像模板制作教程都在仓库里:

github.com/pengchengyi…

觉得有用的话点个 Star 就是对独立开发者最好的支持;有问题欢迎提 Issue 或 Discussion。