这里主要介绍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. oschina github使用指南

    我的github仓库开通,https://git.oschina.net/zhjh256. 1.打开https://git.oschina.net/signup,没有账号的话,则新创建账号. 2.从h ...

  2. mac下eclipse的svn(即svn插件)怎么切换账号?

    以mac os x为例(Unix/Linux类似) 打开命令行窗口,即用户的根目录(用户的home目录) cd ~ 即可进入home目录. 执行命令 ls -al 会列出home目录下的所有文件及文件 ...

  3. wap网站safari浏览器和微信cooke不能登录问题

    wap网站safari浏览器cooke不能登录问题: http://wenku.baidu.com/link?url=VnPxl43PySYVygt09vkQ7xwxOD0JCXNtw3Fx7100j ...

  4. SilverLight MD5加密

    效果体验:http://keleyi.com/tool/md5.htm 嵌入页面的代码: <div style="width:400px;height:230px"> ...

  5. JS之跨域

    今天学了跨域,迫不及待想跟大家分享!不妥之处希望大家指正. 首先来明确一下"跨域"这个概念. 跨域指的是,到外域去取数据.那什么是"外域"呢?我们先来了解同域. ...

  6. RHEL7虚拟机实验快照

    配置虚拟机连接网络 首先确保NetworkManager服务正常运行 [root@administrator ~]# systemctl status NetworkManager ● Network ...

  7. 关于SharePoint 的Client object model该何时load和execut query的一点自己的看法

    很多人在用client object model的时候,不知道何时或者该不该load,今天看到一个观点描述这个问题,觉得很有道理,和大家分享.那就是写client object model就像写sql ...

  8. tomcat已 .war 包的形式发布项目

    一:首相将写好的工程打成.war 文件包, 借助eclipse工具完成. 右键项目名称 --> Export --> WAR file  进入如下图 二: 进入到Tomcat的 webap ...

  9. GCC编译器使用

    一.GCC简介 通常所说的GCC是GUN Compiler Collection的简称,除了编译程序之外,它还含其他相关工具,所以它能把易于人类使用的高级语言编写的源代码构建成计算机能够直接执行的二进 ...

  10. 【读书笔记】iOS-GCD-API

    一,Dispatch Queue dispatch_async(queue, ^{ /* *想执行的任务 */ }); 其中queue分为两种: 1,Serial Dispatch Queue 等待现 ...