这里主要介绍AutoIT的脚本语法特征,包括变量、关键字、宏、设置选项等,详细的语法细节,可以参考其用户手册,也可以去AutoIT中文论坛(www.autoit.net.cn)交流。

1. 变量

AutoIT的变量命名规则:以$开头的字母、数字、下划线的组合,例如$Name、$Jone_Wang、$Num001,这些命名规则都是合法的。

定义变量可以使用Global、Dim或者Local来定义。如:Dim $Name、Global $Name、Local $Name.它们的区别如下:

Global,申明全局变量

Local,申明局部变量,如函数内部变量

Dim,如果变量名和全局变量同名,则会重用全局变量;否则就只是申明一个局部变量。

2. 常用关键字

Include,包含一个文件到脚本中,用法:#include “[路径\]文件名”;

include-once,指定当前文件只能被包含一次。没有使用这个关键字申明时,一个库文件如果多次被引用,编译器会报错。用法:#include-once;

cs,注释行开始,ce:注释行结束,两者配合使用,即#cs…#ce;

单独注释一行代码,可以使用分号“;”注释。

3. 宏

AutoIT提供了大量的宏,极大地方便了脚本的编写。宏都以@开头,如@OSVersion返回当前操作系统版本;@ProgramFilesDir返回Program Files文件夹路径;@YEAR 返回当前年份(4位数)等。更多的宏,请参看AutoIT帮助。

4. 设置选项

AutoIT可以通过Opt()函数来实现运行时的各种设置,如:

Opt(“MouseCoordMode”,1) 设置鼠标函数使用屏幕绝对坐标值;

Opt(“MouseCoordMode”,0) 设置鼠标函数使用当前激活窗口听相对坐标值;

Opt(“WinTitleMatchMode”,1) 设置窗口函数标题匹配时从头开始匹配标题;

Opt(“WinTitleMatchMode”,2) 设置窗口函数按含明某子串模式来匹配标题。

更多配置选项,请参看Opt()函数的帮助。

5. 内置函数

AutoIT内置了大量常用的函数,主要包括:操作窗口和控件类、控制鼠标键盘类、文件目录管理类、字符串处理类等,基本可以满足绝大多数的需求。同时,官方包中还带了大量第三方的库函数,网络上也有很多人在不断扩充库函数。如果还找不到所需要的特殊功能函数,我们还可以自己编写函数。

6. 如何编写库函数

当我们对一个复杂的应用程序编写脚本的时候,可能有很多功能段是会重复出现的。为了减少编写脚本和维护脚本的工作量及复杂度,我们可以将那些含有相同逻辑的脚本封装成函数,并将这些函数按照功能或类型特点,分类组织在不同的文件中,然后在使用这些函数的脚本里包含这些文件。函数的编写方法:

将功能代码嵌入在Func和EndFunc之间。

定义函数的参数及其返回值。

函数名必须用字母或下划线“_”开头。合法的函数名如MyFunc、Func1、_My_Func1等。

下面是一个示例函数,该函数的功能是返回一个数*2后的值。

;Head.au3
Func MyDouble($value)
$value=$value * 2
Return $value
EndFunc

AutoIT安装包中自带了大量非常有用的库函数,它的帮助文档中对每个函数的使用都有非常详细的说明。写脚本时,可以随时通过F1键调出查看。使用这些库函数时,须要在脚本中包含对应的库文件(如#include <Array.au3>).

AutoIT脚本的语法特征的更多相关文章

  1. <转载> bat 脚本基本语法 http://blog.csdn.net/bluedusk/article/details/1500629

        bat 脚本基本语法 2007-01-25 10:31 常用命令 echo.@.call.pause.rem(小技巧:用::代替rem)是批处理文件最常用的几个命令,我们就从他们开始学起. = ...

  2. L脚本语言语法手冊 0.10版

    L脚本语言语法手冊 0.10版       简  介 L脚本语言是一个轻量级的,旨在接近自然语言的编程语言,眼下支持在中文.英文基础上的编程.并可扩展为随意语种.L脚本语言的语法结构简单.程序结构相对 ...

  3. .bat脚本基本命令语法

    目录批处理的常见命令(未列举的命令还比较多,请查阅帮助信息)     1.REM 和 ::     2.ECHO 和 @     3.PAUSE     4.ERRORLEVEL     5.TITL ...

  4. Lua脚本之语法基础快速入门

    要 1.基本数据类型 2.Lua中的常用语句结构以及函数 3.Lua中的常用语句结构介绍 4.Lua中的库函数 目录[-] 一.基本数据类型 二.Lua中的常用语句结构以及函数 1.Lua中的常用语句 ...

  5. AutoIt 脚本小试——刷网易云音乐歌单

    AutoIt 确实是个很强大的脚本工具. 如果早知道有这个,当初是怎么都不会去学易语言的  (๑•̀ω•́๑) 这是个简单脚本 = ๛ก(ー̀ωー́ก) 用来增加歌单播放次数和个人的听歌量. 原理不过 ...

  6. 运维脚本while语法

    循环的意思就是让程序重复地执行某些语句; whiler循环就是循环结构的一种,当事先不知道循环该执行多少次,就要用到while循环; while循环语句的运行过程 使用while循环语句时,可以根据特 ...

  7. shell脚本启动语法错误syntax error near unexpected token '{

    执行shell脚本时失败,报语法错误,但脚本内容检查正常 原因为该脚本是在非Linux系统下编辑之后放到系统执行的,文件模式类型非Linux系统匹配的模式类型. 查看文件的模式类型 显示文件的模式类型 ...

  8. .bat脚本基本命令语法 http://www.cnblogs.com/iTlijun/p/6137027.html

    这个是我找到的非常好的一篇文章了: 目录批处理的常见命令(未列举的命令还比较多,请查阅帮助信息)     1.REM 和 ::     2.ECHO 和 @     3.PAUSE     4.ERR ...

  9. bash脚本 while语法

    基本语法(比较常见的两种形式): 只要特定条件为真,”while” 语句就会执行 while [ condition ] do command1 command2 command3 done 或者 w ...

随机推荐

  1. SFTP和FTS协议的区别

    都是为FTP连接加密,协议非常相似.一个是借助SSL协议加密,一个时借助SSH协议加密.SSL是为HTTP/SMTP等加密设计的:SSH是为TELNET/FTP等加密.建立传输通道而设计的.其实SSH ...

  2. Webform(简单控件、复合控件)

    一.简单控件: 1.label控件 <asp:Label ID="Label1" runat="server" Text="账 号:" ...

  3. winform(公共控件)

    一.客户端设计思路 1.理顺设计思路,架构框架 2.设计界面 3.编写后台代码 4.数据库访问 二.公共控件 1.Button(按钮): ⑴ Enabled :确定是否启用控件 ⑵ Visible:确 ...

  4. 一道灵活的css笔试题

    今天在网上看到一css笔试题,乍一看很简单,实则内部暗藏玄机,题目大概是:九宫格,每格长宽50px,边框宽度5px,鼠标经过边框变红,效果如下: 鼠标路过时: 以下是代码(如有不足之处望多加指正) & ...

  5. android Java BASE64编码和解码一:基础

    今天在做Android项目的时候遇到一个问题,需求是向服务器上传一张图片,要求把图片转化成图片流放在 json字符串里传输. 类似这样的: {"name":"jike&q ...

  6. IO流-输入输出

    java的I/O技术可以将数据保存到文本.二进制.ZIP压缩文件中,下面来说说一些基本的常识(今天只讲理论).先来说说流,何为流?“流就是一组有序的数据序列,根据操作的类型,可以分为输入(Input) ...

  7. 认识Runtime2

    我定义了一个Person类作为测试. 其中Person.h: // // Person.h // Test // // Created by zhanggui on 15/8/16. // Copyr ...

  8. CocoaPods的使用

    一.安装Cocoapods步骤:(在终端安装) 1.在安装前,需确保已经安装了Ruby环境 mac 下安装Ruby环境步骤: (1).安装RVM $ curl -L https://get.rvm.i ...

  9. 安装VVDocumenter-Xcode-master (Xcode 7.1)的过程

    下载地址: http://pan.baidu.com/s/1boxvewB 1.首先下载解压压缩包打开VVDocumenter工程,编译一遍(快捷键com+B) 2.在finder里面的应用程序,找到 ...

  10. KVO的使用

    KVO的使用 KVO是一种设计模式,名为观察者. addObserver:forKeyPath:options:context: 通知其他对象的方法,这个方法在NSObject中就已经申明了,也就是说 ...