引言
得益于互联网,在没有系统性掌握autoIT3情况下,依然能够开发一些小模块。我想,这也是这个民族聪明的地方,在以任务为导向的前提下,能够迅速上手,学习,完成一个个目标,但是这种“聪明”也有缺点,那就是学不精,学不透,没有系统性地构建出自己的能力库。适合冲刺,但是深度不够。我想这也是这个行业存在中年危机的一个原因。因为前些年我们需要追赶,所以需要能够加班冲业绩的人,但是到了一个阶段之后,是不是应该开始沉淀,积累,放慢脚步以更深入呢?
所以开设这个专栏的目的也是一方面为了构建自己的能力库,另外,授人以鱼不如授人以渔,也希望专栏读者能够具备进行探索,能够自己解决问题。
学习一门语言,很重要地一个开端就是会读它自带的help文件,会读help文件,包含以下几层意思:
- 通过help文件能够充分地了解这门语言,它可以做什么?它擅长哪个领域?它的局限在哪里?
- 通过help文件掌握它的基本语法,可以编写简单程序
- 能够查询到自己想要的信息,包括函数释义,宏定义等
help文档目录
AutoIt模块是对这门语言的介绍,包括简介,安装目录文件,帮助文件等,通过这个模块可以帮助初学者上手这门语言。
User Defined Functions Reference简称UDF,包含了使用autoIT写的函数和脚本,用户可以直接使用,无需自己开发,使用#include将使用的脚本包含进去即可。
AutoIT模块介绍
以下挑选一些比较重要地模块介绍,有兴趣的读者可以细读原文,如果英语不好就翻译,我还是主张看原著,其他都是二手的,肯定比不上原著。
Introduction
“AutoIt v3 is a freeware BASIC-like scripting language designed for automating the Windows GUI and general scripting. It uses a combination of simulated keystrokes, mouse movement and window/control manipulation in order to automate tasks in a way not possible or reliable with other languages (e.g. VBScript and SendKeys).”
敲重点:
- 这是一款脚本语言(scripting language),不需要编译链接等,直接就可以运行,易学易上手。
- 用于windows GUI的自动化中。
- 可模拟击键,鼠标移动和窗口/控制操作,以自动执行任务。
因此这门语言可用于程序安装,GUI窗口操作等等,windows系统你平时怎么操作,它就可以帮你完成!
Using AutoIt
这个模块包括了编辑,运行脚本,编译为.exe文件的完整流程说明,值得阅读,后文在使用到的时候,再做详细介绍。
这里值得一提的是windows titles and text(Advanced): AutoIt有三种“窗口匹配”模式。选择匹配模式模式需要通过AutoItSetOption函数,使用WinTitleMatchMode选项设置。引出了一个非常重要的函数“AutoItSetOption”,可简写为opt,该函数可以进行多种参数的设置,比如屏幕坐标,如果选择绝对坐标的话,随着分辨率,显示器的变化,坐标会改变,但是使用窗口相对坐标就没有这个问题了,就可以使用opt进行配置。
Tutorials
该模块为代码举例。
Language Reference
本章主要是语法知识,非常重要,后续会专门写一篇文章介绍。
GUI Reference
GUI相关概念,后续会进行介绍。
Keyword Reference
关键字。用于语言本身提供的结构和功能,例如控制流语句(if,while等),数据类型(如int,string等)
Micro Reference
宏定义,比如:
这个宏指脚本运行的目录,如果想在脚本运行目录查找某个文件,代码如下:
Local $aFileList = _FileListToArray(@ScriptDir, "FurMark_*_Setup.exe")
Function Reference
AutoIT自带的函数介绍。
Function与UDF的区别是:UDF的函数名可以被复用,前提是相应模块没有被include相关脚本,Function的函数名不能被复用。举例如下:
MsgBox作为Function,即使没有#include <MsgBoxConstants.au3>,在脚本里进行定义的时候,仍然会报错。
以上这段代码则不会报错,_FileListToArray函数在file.au3这个UDF里,如果不包含file.au3,就可以对这个函数进行重新定义。