AutoIt v3 是一个类似 BASIC 脚本语言的免费软件, 它设计用于 Windows GUI(图形用户界面) 中进行自动化操作. 利用模拟键盘按键, 鼠标移动和窗口/控件的操作实现自动化任务. 而这是其它语言不可能做到或无可靠方法实现的(比如 VBScript 和 SendKeys). AutoIt 非常小巧, 完全运行在所有 windows 操作系统上. 并且不需要任何运行库!

AutoIt 最初是为 PC(个人电脑) 的"批量处理"而设计, 用于对数千台 PC 进行(同样的)配置. 现在, autoit 是一个支持复杂表达式, 自定义函数, 循环等的强大脚本软件. AutoIt 可以做的事:

    • 简单易学的类似 BASIC 语法
    • 模拟键盘,鼠标动作事件
    • 操作窗口与进程
    • 直接与窗口的"标准控件"交互
    • 脚本可以编译为独立的可执行文件
    • 创建用户图形界面接口 (GUIs)
    • COM 支持
    • 正则表达式
    • 直接调用外部 DLL 和 Windows API 函数
    • 脚本化 RunAs 功能
    • 详细的帮助文档和大型论坛社区支持
    • 完全兼容 Windows XP / Server 2003 / Vista / Server 2008 / 7 / 8
    • Unicode 与 64 位支持
    • 可放心使用的数字签名
    • 兼容 Windows 用户帐户控制 (UAC)

语法的一些介绍:

  变量是将数据存储在内存中, 以便可以快速访问. 您可以把它想象为在内存中的邮箱, 我们可以往里面存信也可以取信. 例如您可以创建一个变量用来保存用户响应的数值, 或某个数学表达式的运算结果.

每个变量都有自己的名字(这跟邮箱是不是很像), 而且必须以英文 $ 符号为首字符, 其后只能包含字母, 数字和下划线 "_".

;表示注释该行,局部变量声明
#cs #cs和#ce联合使用表示多行注释
Local $vVariable
;全局变量声明
Global $vVariable1, $vVariable2
;常量的声明
Const $iConst1 = 1, $iConst2 = 12
#ce

  涉及的一些变量转换管理方法:

常见的一些数据类型:

 

一些常见的循环语句用法(msgbox用于显示弹出框):

If <表达式> Then
    语句
   
...
[ElseIf 表达式-n Then
    [elseif 语句
... ]]
    ...
[Else
    [else 语句]
   
...
EndIf

Local $sString = ""
If $sString > 0 Then
MsgBox($MB_SYSTEMMODAL, "", "值为正数.")
ElseIf $sString < 0 Then
MsgBox($MB_SYSTEMMODAL, "", "值为负数.")
Else
If StringIsXDigit($sString) Then
MsgBox($MB_SYSTEMMODAL, "", "值应该为十六进制!")
Else
MsgBox($MB_SYSTEMMODAL, "", "值是一个字符串.")
EndIf
EndIf

Switch <表达式>
    Case <值> [To
<值>] [,<值> [To <值>] ...]
        语句 1
   
...
    [Case <值> [To <值>] [,<值> [To
<值>] ...]
        语句 2
    ...]
   
[Case Else
        语句 N
   
...]
EndSwitch 

Local $sMsg = ""

Switch @HOUR
Case 6 To 11
$sMsg = "早上好"
Case 12 To 17
$sMsg = "下午好"
Case 18 To 21
$sMsg = "晚上好"
Case Else
$sMsg = "你还在干什么?"
EndSwitch MsgBox($MB_SYSTEMMODAL, "", $sMsg)

 For <变量> = <开始> To <停止> [Step <步进值>]
    语句
   
...
Next

For $i = 5 To 1 Step -1
MsgBox($MB_SYSTEMMODAL, "", "倒计时!" & @CRLF & $i)
Next
MsgBox($MB_SYSTEMMODAL, "", "点火升空!")

Do
    语句
    ...
Until
<表达式>

Local $i = 0
Do
MsgBox($MB_SYSTEMMODAL, "", "$i 的当前值: " & $i) ; 显示 $i 的值.
$i = $i + 1 ; 或者也可以使用 $i += 1.
Until $i = 10 ; 增加 $i 的值, 直到它等于 10 (时结束循环).

  

 

 

 

智能化脚本autoit v3的简单了解的更多相关文章

  1. 结合python+selenium使用AutoIt V3实现文件、图片上传

    1.下载.安装AutoIt V3 下载官网:https://www.autoitscript.com/site/autoit/downloads/ 2.AutoIt V3组件介绍 AutoIt Win ...

  2. IDA的脚本IDC的一个简单使用

    目的:主要是想学习一下IDA的IDC的脚本的使用.这里做了一个小的测试. 这里使用的是VS2015Community来生成文件的. 一.编写测试程序: 这里先生成我们的目标数据. 然后编写测试程序.得 ...

  3. cocos2d-x使用python脚本创建项目的简单方法

    本文有CC原创,转载请注明地址:http://blog.csdn.net/oktears/article/details/13297003 在cocos2d-x2.1.4以上的版本中,取消了使用vs模 ...

  4. jmeter压力测试的简单实例+badboy脚本录制(一个简单的网页用户登录测试的结果)

    JMeter的安装:在网上下载,在下载后的zip解压后,在bin目录下找到JMeter.bat文件,双击就可以运行JMeter. http://jmeter.apache.org/ 在使用jmeter ...

  5. shell脚本编程之“最简单的死循环”【转】

    转自:http://blog.chinaunix.net/uid-23046336-id-3475462.html 在linux下编程的程序猿都知道shell脚本,就算你不怎么熟悉,也应该听过的吧!那 ...

  6. 【Shell 编程基础第一部分】第一个Shell脚本HelloShell及一些简单的Shell基础书写与概念;

    http://blog.csdn.net/xiaominghimi/article/details/7603000 本站文章均为李华明Himi原创,转载务必在明显处注明:转载自[黑米GameDev街区 ...

  7. Mac 上使用 Shell 脚本 + adb shell 实现简单的 Android 模拟点击自动化测试

    需求 在 A 界面,点击跳转到 B 界面(该界面会执行一些业务),再点击返回键出现 Dialog 弹窗,点击确认退出按钮,返回 A 界面.不断循环. 思路 一开始想到的就是按键精灵,下了 mac 版使 ...

  8. Python与Hack之window下运行带参数的Python脚本,实现一个简单的端口扫描器

    1.前提是:windows已经配置好Python的环境变量: 2.进入cmd命令行模式: **输入python命令,检测是否环境配置好:显示这样说明配置环境变量没问题 **用cd命令进入Python脚 ...

  9. 使用一个Python脚本来运行一个简单的Django项目

    创建视图 Django是一个模型-模板-视图(model-template-view,MTV)框架. 视图部分通常检查看HTTP给出的请求和查询或者结构,这些信息是发送到表示层的数据. 我们在 hel ...

随机推荐

  1. Express全系列教程之(二):Express的路由以及动态路由

    一.Express路由简介 路由表示应用程序端点 (URI) 的定义以及响应客户端请求的方式.它包含一个请求方时(methods).路径(path)和路由匹配时的函数(callback); app.m ...

  2. COSC2309/2347 Semester 1, 2019

    Mobile Application DevelopmentCOSC2309/2347 Semester 1, 2019Movie Night PlannerAssignment 1 (20 mark ...

  3. qs.stringify和JSON.stringify()

    var a = {name:'hehe',age:10}; qs.stringify(a) // 'name=hehe&age=10' JSON.stringify(a) // '{" ...

  4. 一种JNI混淆方案

    转载自:http://www.liuling123.com/2016/06/so_method_mix.html 感谢原作者 侵删 默认情况下,使用JNI时与native对应的JNI函数名都是Java ...

  5. zabbix监控特定脚本有无生成

    1.由于权限问题,zabbix不能直接查看其它用户目录下的文件,修改sudo文件使zabbix用户能以root身份执行test命令 visudo zabbix ALL=(root) NOPASSWD: ...

  6. python练习题-day20

    1.json.pickle.shelve三个区别是什么? 首先,这三个模块都是序列化工具. 1. json是所有语言的序列化工具,优点跨语言.体积小.只能序列化一些基本的数据类型.int\str\li ...

  7. Keras RetinaNet github项目

    https://github.com/fizyr/keras-retinanet 根据此网站的方法,利用Pascal VOC 2007数据集开始训练,出现error: D:\JupyterWorkSp ...

  8. 谷歌将一些弱小的库从安卓代码移除Google Removes Vulnerable Library from Android

    Google this week released the November 2018 set of security patches for its Android platform, which ...

  9. Excle中的使用小技巧

    关于从数据库中拷贝来的数字,拷贝到excle中,那些数字都变成了科学计算法. 步骤1,鼠标右键选中的列,选择“设置单元格格式(F)” 2.从这里面选中这些是否有小数,如果没有小数就把这个改成0

  10. eval() 和 int()区别,以及eval作用

    eval()方法作用是将数据转换回原本的类型 a = str(list) type(a)--->str eval(a) type(a)--->list