自己开发个脚本语言,就象Autoit 3那样的,需要具备什么知识?开发语言,编译原理的自动机原理肯定要学的
AutoIt脚本与VB等编程语言比较起来,有什么优势和不足,哪位大师能够指点一下 。AutoIt封装了很多现成的函数,称之为UDF(用户自定义函数),用起来很方便,直接用就是了;最终可以编译为exe执行,对运行环境也没什么太大要求 。作为脚本语言,变量无需定义即可直接使用,对变量类型的要求也很松,编程方便性有很大优势,上手快 。
但在直接调用Windows API时不如VB方便,而且脚本语言一个不可避免的劣势就是,代码的执行效率慢 , 这种编译也不是真正意义上的编译,容易被反编译 。而且面向对象和多线程方面 , autoit支持不好 。
总之,任何一门语言要想钻研深了都不是容易的事情,脚本语言足够用来做一些常用的操作,但要想专业些,还得高级语言 。
求AU3(autoit)语言命令哈哈..我也是刚刚学AU3的.去下个AU3的帮助就可以了.百度一下aotoit去中文论坛吧...
Autoit v3 script 是什么AutoIt是个免费的工具 , 类似按键精灵,可以通过写脚本(类VB语言)模拟鼠标键盘动作,可以像VB那样绘制常用控件 。有丰富的内置函数和用户自定义函数 。
现在是v3版本 。
autoit 怎么读?['
AUTOIT脚本里怎么使用批处理命令操作方法:下载并安装AutoIt v3新建一个AutoIt文件,将其命名为Testing1.au3 , 输入以下代码:$a =100$b =100$c =$a +$bConsoleWrite($c)而后按F5键查看运行结果:
autoit如何执行DOS命令直接用函数:
FileDelete(@UserProfileDir&"\recent\*.*")
删除当前用户目录下的recent文件夹下所有文件 。
你完成可以去aotoit的帮助文档中找到相应解决办法 。
用.bat写了一段脚本用于几个au3的自动执行 , 双击后不能自动执行 , 求高手指点童鞋 , au3不是可执行文件,需要编译为exe再执行的 。
或者,通过调用AutoIt.exe来执行au3文件也可以 。
autoit如何打开非exe,bat后缀的文件 , 比如如何打开txt,word文件Run(@ComSpec & " /c " & 'start notepad.exe "d:\qq.txt"', "", @SW_HIDE)Run(@ComSpec & " /c " & 'start /d "C:\Program Files\OFFICE2007\OFFICE12" WINWORD.EXE "d:\ps.doc"', "", @SW_HIDE)适当修改就可以了
AUTOIT中runas参数的使用如果是在Vista或Win7系统上 , 脚本开头最好加上:
#RequireAdmin
指定当前脚本需要拥有完整的管理员权限才能正确运行 。主要针对用户帐户控制(UAC)
autoit用的什么语言autoit 是一种类似Vbs脚本语言的免费软件,使用它可以完成一些自动化操作,比如模拟键盘按键、鼠标移动、软件的自动安装等 。
autoit使用的语言 , 其语法类似于basic,有很多内置的函数与功能丰富的用户定义函数库 。
AutoIt如何自动切换输入法?看一下语言设置里QQ拼音输入法对应的切换热键是什么(一般是个组合键),然后用AutoIt发送这个组合键就可以了 。比如,我的搜狗拼音输入法,对应的热键是“Ctrl+,”用AutoIt发送组合键:Send("^,") Run("notepad.exe")Send("^,")WinActivate("Untitled - Notepad")Send("你要写什么字进去?。?quot;)
autoit脚本都输入啥指令沙发
AutoIt 可以做的事:
运行 Windows 及 DOS 下的可执行文件
模拟键击动作(支持大多数的键盘布局)
模拟鼠标移动和点击动作 。
对窗口进行移动、调整大小和其它操作 。
直接与窗口的“控件“交互(设置/获取 文字、移动、关闭 , 等等)
配合剪贴板进行剪切/粘贴文本操作
对注册表进行操作
不同于 AutoIt v2,新的v3版本含有更多的标准语法——类似于VBScript和BASIC——而且现在支持更复杂的表达式、用户函数、循环以及脚本编写老手们所期待的其它所有内容 。
正如前一个版本一样,AutoIt 被设计得尽可能?。ù笤?15KB)并且不用依赖外部DLL文件或添加注册表项目即可独立运行 。使用 Aut2Exe 这个工具即可把脚本文件编译为可独立运行的文件 。
此外我们还更新了 AutoIt 的 ActiveX 和 DLL 版本——AutoItX,与v2版本不同的是,这是个组件化的语言(COM 同一DLL文件中的标准DLL函数) 。AutoItX 将使得您可以加入一些AutoIt 独有的特性到您最常用的脚本语言或程序设计语言中去!请查看 AutoItX 的帮助文档(开始 \ 所有程序 \ AutoIt v3 \ Extras \ AutoItX \ AutoItX Help File)以获得更多信息和示例 。
v3 具有完全不同于v2.64的语法,因此不能兼容旧的脚本 。不过 , v2.64仍旧受到支持并且可以下载 。AutoIt v3 和 v2.64可以同时装在同一台机器上而不会有任何问题,同时还可以保持旧脚本的完好 。v2版本使用的是.aut后缀的扩展名,而v3版本使用的是.au3 后缀的扩展名 。因此不必为了适应v3版本而重写v2.64版本的脚本 。
v3 保持了前一版本中窗口标题、窗口文字、按键和鼠标模拟这些概念,但同时也有了很多新的特性:
控件
直接获取编辑框、复选框、列表框、选择框、按钮、状态栏上的信息,并且作用于这些控件而不必担心键击动作落空 。甚至还可以作用于非活动窗口上的控件!
语言升级
“更适用的”数值类型、无限长度的字符串、混合语句、if 语句、条件选择语句、while 循环语句、for 循环语句、do 循环语句、函数、数组、优秀的字符串处理(超过25个函数?。溆喙δ苌形戳谐?。所有这些都使得制作自动化程序的过程不再痛苦 。是的,这是个GUI自动化语言,但v3版的语法将更加强大,足以用来编写一般用途的脚本 。AutoIt 的旧版本总是被认为是“不太合适的语言”,现在将不再是这样了 。
模拟键击和鼠标动作
我们花了许多时间用在对键击和鼠标动作的模拟功能的优化上,使其在目前所有的操作系统上都可以做到尽可能的精确 。在这一版本中鼠标动作的功能也表现得更像“人类”了,甚至可以用来创建灵活的演示脚本 。所有模拟鼠标和键盘动作的程序在模拟动作的“速度”及其它功能上都是高度可定制的 。
窗口操作
除了“标题/文字”这种v2版本已有的识别窗口的方法以外,现在还可以通过类别名和句柄来识别窗口 。您可以对窗口进行移动、隐藏、显示、调整大小、激活、关闭以及其它所有您想要实现的操作 。
--------------------------------
怎样实现向AutoIt中传参数 , 及AutoIt怎样获取这些参数参考帮助文档中“命令行参数”这一节 。
在传递命令行参数到AutoIt脚本中的时候 , AutoIt会自动初始化一个特殊的数组 $CmdLine 。
下面这些可以在AutoIt脚本中直接使用:
$CmdLine[0] ;参数的数量
$CmdLine[1] ;第一个参数 (脚本名称后面)
$CmdLine[2] ;第二个参数
等等 。
autoit语言算是一种,是一种脚本语言 。与bat差不多
让PC自动完成一些操作 。就是为“批量处理”而设计的 。
前段时间我也在学 , 呵呵 。与BASIC 语言风格的相似
下面摘自它的官方的说明:
AutoIt v3 是用以编写并生成具有 BASIC 语言风格的脚本程序的免费软件 , 它被设计用来在Windows GUI(用户界面)中进行自动操作 。通过它可以组合使用模拟键击、鼠标移动和窗口/控件操作等来实现自动化任务 , 而这是其它语言所无法做到或尚无可靠方法实现的(比如VBScript和SendKeys) 。
AutoIt 最初是为PC(个人电脑)的“批量处理”而设计,用于对数千台PC进行(同样的)配置,不过随着v3版本的到来它也很适合用于家庭自动化和编写用以完成重复性任务的脚本 。
AutoIt 可以做的事:
运行 Windows 及 DOS 下的可执行文件
模拟键击动作(支持大多数的键盘布局)
模拟鼠标移动和点击动作 。
对窗口进行移动、调整大小和其它操作 。
直接与窗口的“控件“交互(设置/获取 文字、移动、关闭,等等)
配合剪贴板进行剪切/粘贴文本操作
对注册表进行操作
不同于 AutoIt v2,新的v3版本含有更多的标准语法——类似于VBScript和BASIC——而且现在支持更复杂的表达式、用户函数、循环以及脚本编写老手们所期待的其它所有内容 。
正如前一个版本一样,AutoIt 被设计得尽可能?。ù笤?15KB)并且不用依赖外部DLL文件或添加注册表项目即可独立运行 。使用 Aut2Exe 这个工具即可把脚本文件编译为可独立运行的文件 。
此外我们还更新了 AutoIt 的 ActiveX 和 DLL 版本——AutoItX , 与v2版本不同的是,这是个组件化的语言(COM 同一DLL文件中的标准DLL函数) 。AutoItX 将使得您可以加入一些AutoIt 独有的特性到您最常用的脚本语言或程序设计语言中去!请查看 AutoItX 的帮助文档(开始 \ 所有程序 \ AutoIt v3 \ Extras \ AutoItX \ AutoItX Help File)以获得更多信息和示例 。
v3 具有完全不同于v2.64的语法 , 因此不能兼容旧的脚本 。不过 , v2.64仍旧受到支持并且可以下载 。AutoIt v3 和 v2.64可以同时装在同一台机器上而不会有任何问题,同时还可以保持旧脚本的完好 。v2版本使用的是.aut后缀的扩展名,而v3版本使用的是.au3后缀的扩展名 。因此不必为了适应v3版本而重写v2.64版本的脚本 。
v3 保持了前一版本中窗口标题、窗口文字、按键和鼠标模拟这些概念,但同时也有了很多新的特性:
控件
直接获取编辑框、复选框、列表框、选择框、按钮、状态栏上的信息,并且作用于这些控件而不必担心键击动作落空 。甚至还可以作用于非活动窗口上的控件!
语言升级
“更适用的”数值类型、无限长度的字符串、混合语句、if 语句、条件选择语句、while 循环语句、for 循环语句、do 循环语句、函数、数组、优秀的字符串处理(超过25个函数?。溆喙δ苌形戳谐?。所有这些都使得制作自动化程序的过程不再痛苦 。是的 , 这是个GUI自动化语言 , 但v3版的语法将更加强大 , 足以用来编写一般用途的脚本 。AutoIt 的旧版本总是被认为是“不太合适的语言”,现在将不再是这样了 。
模拟键击和鼠标动作
我们花了许多时间用在对键击和鼠标动作的模拟功能的优化上,使其在目前所有的操作系统上都可以做到尽可能的精确 。在这一版本中鼠标动作的功能也表现得更像“人类”了 , 甚至可以用来创建灵活的演示脚本 。所有模拟鼠标和键盘动作的程序在模拟动作的“速度”及其它功能上都是高度可定制的 。
窗口操作
除了“标题/文字”这种v2版本已有的识别窗口的方法以外,现在还可以通过类别名和句柄来识别窗口 。您可以对窗口进行移动、隐藏、显示、调整大小、激活、关闭以及其它所有您想要实现的操作 。
--------------------------------
因为是采用了VB的语法,所以下面我总结一下:
//---------------------------------------------------------------------
;第一个是Do while 循环
; Set the counter
$count = 1
; Execute the loop "until" the counter is greater than 5
Do
; Print the count
MsgBox(0, "AutoIt Example", "Count is: " & $count)
; Increase the count by one
$count = $count + 1
Until $count > 5
//---------------------------------------------------------------------
;第二个是for循环
; Execute the loop 5 times
For $count = 1 To 5
; Print the count
MsgBox(0, "AutoIt Example", "Count is: " & $count)
Next
; Set the counter
$count = 0
//---------------------------------------------------------------------
;第三个是while循环
; Execute the loop "While" the counter is less than 5
While $count < 5
; Increase the count by one
$count = $count + 1
; Print the count
MsgBox(0, "AutoIt Example", "Count is: " & $count)
Wend
//---------------------------------------------------------------------
;这儿是函数调用示例
; Run TestFunc1
TestFunc1()
; Run TestFunc2
TestFunc2(20)
;
MsgBox(0, "AutoIt Example", "Finished!")
Exit
; TestFunc1
Func TestFunc1()
MsgBox(0, "AutoIt Example", "Inside TestFunc1()")
EndFunc
; TestFunc2
Func TestFunc2($var)
MsgBox(0, "AutoIt Example", "Inside TestFunc2() - $var is: " & $var)
EndFunc
//---------------------------------------------------------------------
要是回答的内容有问题 , 或认为不妥,请发送百度消息给我,消息内容加上本页网址哦 。。
·
开机时的出现了autoit错误line-0是怎么回事,如何解决??求高手解答AutoIt是个脚本语言 , 常被用于自动化安装 。
网络上有些系统镜像里含有AutoIt脚本,用于系统的自动配置 。
出现这种问题往往有两种可能的原因:
1)做系统的时候没搞好 。这种情况就需要换一个系统镜像文件重装系统 。
2)系统启动后会自动运行一些脚本用以配置系统,加载一些设置 。这种情况只需要清理开机自动运行项即可 。网上有现成软件工具的;或者你也可以在“开始 - 运行” 里输入 regedit 回车,打开注册表编辑器,删掉 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run 下相关的键值 。
Autoit 如何实现长按键功能, 请教高手Send("{a down}") ;按住按键 A
Sleep(5000) ;等待5秒
Send("{a up}") ;松开按键 A
以上只发送一次a
------------------------------------------------------
以下在5秒内不停发送a
Local $begin = TimerInit()
AdlibRegister("keypress", 100)
Func keypress()
If TimerDiff($begin) = 5000 Then
AdlibUnRegister("keypress")
EndIf
Send("a")
EndFunc
利用autoit怎么把不在显示屏内的tree中的item选中#include Opt("WinTitleMatchMode", 4)ToolTip("程序将在5s内关闭屏幕显示")Sleep(5000)$begin = TimerInit() While TimerDiff($begin) < 10 * 1000_SendMessage(WinGetHandle('classname=Progman'), 274, 61808, 2)Sleep(10)WEnd_SendMessage(W 。
autoit运行中如何关闭HotKeySet 设置热键 , 比如ESC:
在脚本中的循环主体前加上这句:
HotKeySet("{Esc}", "_Exit")
Func _Exit()
Exit
EndFunc
AutoIt加参数运行 。不复杂啊,
$CmdLine[0] ;参数的数量
$CmdLine[1] ;第一个参数 (脚本名称后面)
例子:
If $cmdline[0]1 Then Exit MsgBox(48, "警告", "有且只能有1个参数!")
ShellExecute($cmdline[1])
编译为TxtOpen.exe后 , 执行TxtOpen.exe c:\a.txt
autoit怎么从文件中读取参数?用iniRead函数,
$value = https://www.zaoxu.com/jjsh/bkdq/IniRead ( "filename", "section", "key", "default" )
帮助中有例子的,只要是标准ini文件,包含section,key和value这种结构,都可以用iniRead 。
你这里的count就是key,600就是value,上面肯定有类似[xxx]的结构就是section 。
filename要用全路径(相对路径也是可以的) 。
若读取失败,$value就等于"default"这个值 。
读出来的都是字符串格式,记得用Number函数转为数字格式 。这点很重要!
即:建议写为:
$value = https://www.zaoxu.com/jjsh/bkdq/Number( IniRead ( "filename", "section", "key", "default" ) )
autoit3如何像给定的输入框输入数据ControlSetText ( "title", "text", controlID, "new text" )
第一个参数:目标窗口标题, 或句柄, 或类名;
第二个参数:一般没用 , 我就用“”来标记就可以了 。
第三个参数:控件标识符,这个要用到AutoIt Window Info 来识别
比如向一个记事本发送Hello World
run("notepad.exe");打开记事本
Dim $d=WinWaitActive("[title:无标题 - 记事本;Class:Notepad]");获取记事本的句柄
ControlSetText ($d,"","[CLASS:Edit; INSTANCE:1]","Hello Wolrd");向记事本写入信息
autoIt的VC接口帮助里是这样写的:
命令行参数
当我们传递命令行参数到AutoIt脚本中的时候,AutoIt会初始化一个特殊的数组 $CmdLine.注意, 脚本文件名不算进参数; 请使用 @ScriptName 代替脚本名称.一个参数中如果含有空格,必须使用 "双引号"把内容围住.已编译的 脚本同样也能接受命令行参数. 请看下面代码:
$CmdLine[0] ;参数的数量
$CmdLine[1] ;第一个参数 (脚本名称后面)
$CmdLine[2] ;第二个参数等等
...
$CmdLine[$CmdLine[0]] ;可以用来表示得到最后一个参数...
autoit3 怎么让数字运行一次加-次第一怎么才能让他无限循环
用While循环:
While 1
要无限循环的代码
WEnd
第二为什么他是好使的,但是在游戏里他不吃药呢(我游戏里F5是药)
HotKeySet ("F5") 这句用错了吧?是 Send("{F5}") 吧?
第三:
AppActivate可能成功,可能失败,但按你这样的写法,后面的代码不管成功还是失败都会执行的 。所以有可能激活失败的时候开始sleep,下次激活成功的时候还没从sleep出来 。因此最好判断一下 AppActivate 的执行结果 。
ret = objws.AppActivate("SYBQ:63区")
If ret Then ' if succeed
WScript.Sleep 9000
objws.SendKeys "{F5}"
End If
最后一个问题(你的问题貌似有点问题:鼠标右键一直按住就不松了???),我给个示例:
MouseDown("right")
While 1
MouseMove(x1, y1) ;还可以加第三个参数指定鼠标移动速度
Sleep(3000)
MouseMove(x2, y2)
Sleep(3000)
WEnd
AutoIt中Run 函数 路径传参形式是怎么样的试试:
loch="\"C:\\Program Files\\PLSQL\\plsqldev.exe\"";
因为路径中存在空格,要把双引号加进去一起作为传递给AutoIt的参数 。
autoit3 run某些exe没有回应你是Win7操作系统吧?C盘根目录是需要管理员权限的 。有些exe会在运行时自己申请管理员权限,而有些exe不会 , 所以建议在脚本开头加一句:#RequireAdmin
autoit run函数中路径问题Run(@ProgramFilesDir & "\AutoIt3\AutoIt3Help.exe")
打开AutoIt的帮助文件 。
帮助中也自带了一个例子:
Run(@WindowsDir & "\Notepad.exe", "", @SW_MAXIMIZE)
以最大化方式打开 Notepad 窗口 。
其实,简单些 , 写一个绝对路径就可以 。
Run("D:\test.exe")
我写了一个自动脚本 RUN("123.exe")为什么没有效果? 用的I-AUTOIT 。写的 , 测试点了也没有反应程序路径不对
为什么我的autoit3不能运行分析:WinWaitActive方法只是被动地等待窗口被激活,只有窗口确实处于激活状态了,脚本才会继续向下执行,否则就阻塞在那里一直等待 。这也就是为什么你手点了一下才开始运行的原因 。
解决方法:在WinActive判断和WinWaitActive方法前,都使用WinActivate方法主动激活窗口 。
autoit中 , 如何获取一个网页中 , 对应字符串的坐标#includeLocal$data=https://www.zaoxu.com/jjsh/bkdq/Run(@ComSpec&"/cipconfig","",@SW_HIDE,$STDOUT_CHILD)Local$wertWhile1$wert&=StdoutRead($data)If@errorThenExitLoopMsgBox(0,"STDOUTread:",$wert)WEnd
如何通过Autoit来模拟点击网页某个位置对于Flash按钮 , 通常的办法还是要采取发送鼠标点击命令 , 如:
MouseClick("left",356,162)
AutoIt中非标准的节点控件,和单选控件怎么捕获 , 最好不用鼠标获取位置可以模拟键盘按键,如Tab/Enter等按键进行操作,还可以使用软件提供的一些快捷键 。
autoit读取xml的问题,怎么读取xpath中的节点貌似跟读取ini文件一样,要有节点标题,节点关键字,再获取内容~~~~~~·
autoit如何获得窗口、控件的id和句柄?。?/h3>用 autoit 自带的窗口信息工具(AutoIt Window Info)来识别 。
也可以使用内置函数 WinGetHandle() 来根据窗口标题或类或其他属性来获取窗口句柄 。
参见帮助里的:Window Titles and Text (Advanced)
即,窗口匹配的高级模式 。
相应地,获取控件句柄可以用 ControlGetHandle()
AutoIt主要针对标准Windows窗口和控件 。经过封装的非标准窗口和控件往往不能很好识别 。
如何使用autoit3获取页面HTML#include $oIE = _IECreate ("http://home.baidu.com/about/about.html")$sHTML = _IEDocReadHTML ($oIE)MsgBox(0, "即将下载该网页源码", $sHTML)InetGet("http://home.baidu.com/about/about.html", "C:\baidu.txt",1)MsgBox(0, 0,"已经下载C:\baidu.txt")
autoit v3怎么判断窗口状态可以用其他属性来识别窗口 , 如:ACTIVE - 当前活动窗口或者:CLASS + INSTANCECLASS - 内部窗口类名INSTANCE - 从1开始的枚举整数,由程序自动分配的唯一标识.如:WinGetHandle("[ACTIVE]", "")当前窗口一定要是激活状态的 。或者:WinGetHandle("[CLASS:#32770; INSTANCE:2]", "")通常#32770表示标准对话框类(Dialog),Windows上很多窗口都是这个类属性 。因此仅仅通过类名来区分是不现实的 , 必须要结合枚举实例的ID,即INSTANCE 。CLASS和INSTANCE都可以通过AutoIt自带的窗口信息工具获得 。
帮我看下Autoit中是如何提取文体内容的?图中的文本内容值20.50建议你给出窗口信息工具最后一个标签页“综合”的截图,可以同时看到窗口信息而非仅仅控件信息 。Local Const $ctrl = "[CLASSNN:WindowsForms10.STATIC.app.0.33c0d9d32]"Local $var = ControlGetText("窗口标题", "", $ctrl)MsgBox(0, "", $var)自己修改窗口标题字串 。
关于使用AutoIt3对窗口UI进行操作的问题根据你的对AU3的掌握程度建议你使用Au3Record.exe , 他会记录你对软件的操作并生成脚本,结合Au3info,就能达到你的要求如下面打开一个健康检查软件执行的结果输入20180219,然后点击左上角AU3图标退出,就能看到自动生成的脚本
AUTOIT3脚本调用IE,标签的值怎麼取出来?怎样输出文本到文件?不太清楚 $li 取出来的是什么格式的信息,先试试下面这样行不行吧 。
$myFile = @ScriptDir & '\myFile.txt'
If FileExists($myFile) Then FileDelete($myFile)
Local $oFile = FileOpen($myFile, 1)
If $oFile = -1 Then
MsgBox(48+262144, "Warning", "Failed to open file for writting!")
Exit
EndIf
$lis = _IETagNameGetCollection($oIE, "li")
For $li In $lis
;$elem = $li.innerText
FileWriteLine($oFile, $li)
Next
FileClose($oFile)
最好百度hi上交流一下 。
AU3中IE对象的属性如何获得【autoit】fileCreateddate是Document对象的一个属性 。
Document这个对象本身就是在JavaScript脚本语言中描述的,可能IE.au3这个源文件也是与JavaScript相结合的 。
document.fileCreatedDate //获取文件创建的日期
具体参考下面的链接 。
- 如何提高自己的社交能力 怎么提高自己的社交能力
- 如何有效突出自己的优势力 如何让自己的优势变得更突出
- 如何提高自己的穿搭品味 如何提升自己的衣品
- java服务器
- 如何让自己认清现实 怎么让自己认清现实
- 如何让自己活在现实中 怎么样才能让自己活得更现实
- 如何摆正自己的三观 怎么摆正自己的三观
- 如何让自己快速减肥 怎么能快速减肥
- 如何先摆正自己的位置 怎么摆正自己的位置
- 如何提升社交能力 如何提升自己的社交能力