1

目 标 场 景

网络上大部分的自动化操作都是面向移动 App 端和浏览器 Web 端,而对于 PC 端的自动化,按 X 精灵应该是使用最为广泛的一款脚本录制工具。

今天推荐另外一款 PC 端的自动化操作软件:「Autoit」,以下简称为 Au3;相比按 X 精灵,Au3 功能更强大,脚本扩展性和适配性更是吊打前者;对于大部分 PC 端软件的操作,Au3 都能做成自动化。

本篇文章的目的是利用 Au3 脚本工具帮助我们实现自动生成一键执行工具这一操作。

2

准 备 工 作

在开始编写脚本之前,打开 Autoit 官网,下载Autoit Full Installation 和AutoIt Script Editor。


其中,Autoit Full Installation 包含 Autoit 应用程序、Aut2Exe 脚本代码转 Exe 工具、AutoItX 元素选择工具。

AutoIt Script Editor 是脚本编辑工具。

最后,把准备生成一键执行工具的资源放到一个文件夹内。


3

编 写 代 码

我们分4步来实现这个功能。分别是打开 WinRAR 压缩软件、压缩设置、选择图标、生成执行工具。

首先,我们利用 Au3 脚本通过窗口标题拿到窗体对象。

; 选中窗口
; 窗口标题:source,可以自定义
$handle = WinGetHandle("source","")
;选中当前窗口
WinActivate($handle)

接着,通过模拟Ctrl+A 选择文件夹内的所有对象。


模拟单击鼠标右键、按键盘上的 A 键打开 WinRAR 压缩软件。

;全选

Send("^a")

;右键

MouseClick("right")

; 点击A,相当于选择[添加到压缩文件]

Send(‘A‘)

第2步,利用 AutoIt Script Editor 编写 Au3 脚本,对 WinRAR 压缩软件进行一些必要的设置。


利用Autoit Window Info 可以拿到窗体元素的属性,只需要将右侧的图标拖拉到元素上,即可以拿到元素的大部分属性。


同样的是先拿到窗口对象,然后通过元素属性执行点击、输入文本等操作。

;激活压缩窗口

$handle = WinGetHandle("压缩文件名和参数","")
WinActivate($handle)
Sleep(1000)

;点击自解压选项

ControlClick("压缩文件名和参数","","Button11")
Sleep(1000)

需要注意的是,部分非标准元素没法拿到元素的属性,可以借助组合快捷键及 Tab 键移动焦点到元素上,然后执行点击操作。

; 调到文本和图标Tab,执行3次Tab键

Send("^{TAB 3}")
Sleep(1000)

;点击浏览按钮

ControlClick("高级自解压选项","","Button4")

第3步,从 PC 端选择应用图标,操作方法和上面类似。


先利用ControlFocus 拿到输入框焦点,然后执行点击操作,模拟输入图标路径到输入框,最后确定选择,即可以完成选择图标的操作。

;选择文件 update.ico

ControlFocus("选择图标","","Edit1")
Sleep(1000)
ControlSetText("选择图标","","Edit1","update.ico")
Sleep(1000)

; 确定选择文件

ControlClick("选择图标","","Button1")

编辑完脚本之后,就可以第 4 步操作了。

利用Aut2Exe工具可以很方便的把 Au3 脚本转为一个可执行文件。

4

结 果 结 论

经过以上操作,就能在同一级文件夹内生成一个可执行文件。

可以直接双击这个文件,就能完成上面脚本编写的自动化操作,当然,如果配合上 Python ,能完成更加复杂的自动化操作。