ImageVerifierCode 换一换
格式:DOCX , 页数:37 ,大小:37.60KB ,
资源ID:10304701      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10304701.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Autohotkey帮助.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

Autohotkey帮助.docx

1、Autohotkey帮助版本v1.1.08.01l.AutoH2003-2010 Chris Mallett, portionsAutoIt Team and the AHK communitySoftware License: GNU General Public License警告:由于在AutoHotkey和AutoHotkey_L之间存在一些根本的不同。为AutoHotkey编写的脚本在AutoHotkey_L中可能不会像预期的那样工作。对于已知的兼容性问题和解决方案的细节,参考如下: 脚本兼容性:Unicode vs ANSI, DllCall, NumPut/Get, 其他变化。

2、脚本代码文件:以UTF-8保存。AutoHotkey,AutoHotkey_L和编译的脚本常常引发杀毒软件的误报。更多的信息请查看FAQ社区。快速参考基本原理: 初学者教程 支持AutoHotkey的文本编辑器 常见问答 脚本 命令 变量和表达式 函数 对象 交互程序调试键盘和鼠标: 热键(鼠标,遥感和键盘快捷键) 热字和自动取代 重新映射建和按钮 键,鼠标按钮和遥感控制列表其他: DllCall 正则表达式快速参考 AutoHotkey_L特征感谢特别感谢Jonathan Bennett在1999年慷慨地将AutoIt v2作为免费软件放出使它成为我和世界上其他人的灵感和节省时间的工具。另外

3、,一些AutoIt v2控制台的AutoHotkey增强功能,像Window Spy和旧的脚本编译器,直接改编于AutoIt v3的源代码。所以感谢Jon和其他AutoIt的作者。最后,没有其他的这些个人AutoHotkey也不能成为今天的样子。Chris Mallett教程概述这份简介能帮助你马上开始撰写你自己的宏命令和热键。 创建一个脚本每一个脚本都是包含要被程序(AutoHotkey.exe)执行的命令的纯文本文件。脚本也可能包含热键和热字,甚至完全由它们组成。然而,缺乏热键和热字的脚本将会按从上到下的顺序执行它的命令在它被触发的瞬间。创建一个新脚本:1. 下载并安装AutoHotkey

4、。2. 右键桌面或你选择的文件夹的空白位置。3. 在弹出菜单中选择:新建AutoHotkey Script。4. 输入文件名,确保由.ahk结尾。例:Text.ahk5. 右键文件选择编辑脚本。6. 在新的空行中键入:#space:Run 在上面这一行中,第一个字符“#”代表Windows键;所以#space表示按住Windows键然后按下空格键来激活热键。:表示后面的命令在热键被按下时执行,在这个例子中就是进入Google的网页。尝试这个脚本,按如下继续:1. 保存并关闭文件。2. 双击文件来激活它。一个新的图标出现在任务栏通知区。3. 按住windows键再按下空格键。一个网页在默认的浏览

5、器中打开。4. 要退出或编辑这个脚本,右键任务栏通知区的绿色“H”图标。注释:1. 多个脚本能同时运行,每一个在任务栏通知域都有一个自己的图标。2. 每个脚本都能有多个热键和热字。3. 在开始菜单的启动文件夹里创建一个快捷方式可以让脚本在开机时自动启动。打开一个程序或文档Run来打开一个程序,文档,URL或者快捷方式。这里是一些命令的例子:Run NotepadRun C:My DocumentsAddress List.docRun C:MY DocumentsMy Shortcut.lnkRun Run mailto:someone一个热键可以被分配给任何一个上述的例子通过包含一个热键标签

6、。下面的第一个例子的热键是Win+N,而第二个是Control+Alt+C:#n:Run Notepad!c:Run calc.exe上面的例子被称为单行热键因为每个都只包含一个命令。若要通过一个热键执行多个命令则把热键的定义写在第一行之下,然后在在最后一行写上return。例:#n:Run Run Notepad.exereturn如果要执行的程序或文档没有与系统集成,则指定它的完整路径来使它获得执行:Run %A_ProgramFiles%WinampWinamp.exe上面这个例子,%A_ProgramFiles%是一个内置变量。通过使用它而不是C:Program Files脚本会更轻便

7、,也意味着它更能在别的电脑上执行。注意:命令和变量的名字并不区分大小写。例如:“Run”跟“run”是一样的,“A_PromgramFiles”和“a_programfiles”是一样的。用RunWait来代替Run可以使脚本在继续运行之前等待应用程序或文档关闭。下面的例子中MsgBox命令在用户关闭Notepad之前不会执行:RunWait NotepadMsgBox The user has finished (Notepad has been closed).了解更多的关于打开应用程序例如传递参数,指定工作目录和发现程序退出代码点击这里。 发送击键和鼠标点击使用Send命令能将击键发送到

8、当前活动(居于最上层的)窗口。在接下来的例子中,Control+Alt+S成为一个输入签名的热键(在按下之前确保类似于编辑或右键起草的窗口是活动的):!s:Send Sincerely,EnterJohn SmithReturn在上面的例子中所有的字符被逐一输入除了模拟按下回车的Enter。下一个例子演示了一些其他的常用字符:Send c!tabpasted:v上面这一行发送了一个Control+C后跟Alt+Tab接着字符串“pasted”最后是Control+V。查看Send命令关于特殊字符和快捷键的完整列表。最后,击键也能通过你键入的缩略词发送,就是所谓热字。例,无论何时你输入btw后接

9、空格或逗号,下面这一行都会将它取代为“By the way”::btw:by the way鼠标点击:发送鼠标点击给一个窗口,首先需要确定点击发生的X,Y的坐标。这可以通过AutoHotkey附带的Window Spy完成。下面的步骤是应用Window Spy的方法:1. 通过脚本的托盘图标菜单或开始菜单打开Window Spy。2. 激活目标窗口通过点击它的标题栏,alt+tab切换或其他方法(Window Spy会一直位于最前端。)3. 移动鼠标光标到目标窗口需要的地方,写下Window Spy显示的坐标(或者在WindowsXp和更早的版本中,按下Shirt+Alt+Tab来激活Wind

10、ows Spy以便冻结坐标使之能复制粘贴)。4. 用上面发现的坐标来使用Click命令,下面的例子点击鼠标左键:Click 112,233移动鼠标而不点击则使用MouseMove。拖拽鼠标用MouseClickDrag命令。 激活和操作窗口激活窗口(使它到最上层),使用WinActivate。探测一个窗口是否存在可以使用IfWinExist或WinWait。下面这个例子阐明了这些命令:IfWinExist Untitled Notepad WinActivateelse Run Notepad WinWait Untitled Notepad WinActivate上面的例子首先搜索先现存的标

11、题以Untitled-Notepad开头的窗口(区分大小写)。如果发现这样的窗口则它被激活。否则Notepad会被打开脚本会等待直到未命名的窗口出现同时激活它。上述例子也利用了最后发现的窗口来避免在每一个WinActivate的右边指定窗口名。其他的一些常用窗口命令: IfWinActive:检查指定的窗口是不是目前的活动窗口。 WinWaitActive:等待指定的窗口被激活(通常用在发送活动窗口按键,如按下Control+F来查找)。 WinClose:关闭指定的窗口。 WinCMove:移动窗口和/或调整指定窗口大小。 WinMinimize,WinMaxmize,WinRestore:

12、分别是最小化,最大化和还原指定窗口。 通过消息框,输入框等得到用户的输入下面的例子显示一个有两个按钮(YES和NO)的对话框:MsgBox, 4, , Would you like to continue?IfMsgBox, No Return;否则用户选择yes.MsgBox You pressed YES.使用InputBox命令提示用户输入字符串。用FileSelectFileh或FileSelectFolder让用户选择一个文件或文件夹。对于更高级的任务,使用Gui命令来定制数据输入表单和用户界面。提示:你可能从其他的例子注意到任何命令的第一个逗号可以省略(特别当第一个参数为空或由:=

13、或=开头,或命令是独自在一个有延续部分的顶部)。例:MsgBox This is ok.MsgBox, This is ok too(it has an explicit comma). 使用变量和剪贴板变量是一个脚本储存文本或数字的存储区域。只包含数字(允许小数点)的变量会自动解释为数字,当一个数学操作或比较需要它的时候。除了函数中的是局部变量,其余都是全局变量。换言之,它们的值可以被脚本的任何部分读取或改变。另外,变量不需要声明;要让它们存在很简单,就是使用它们(每个变量的初始值都为空)。下面的例子是给变量分配一个字符串:MyVar1 = 123MyVar2 = my string接下来的

14、例子是变量值和字符串或数字的比较:If MyVar2 = my string MsgBox MyVar2 contains the string “my string”.If MyVar1 = 100 MsgBox MyVar1 contains %MyVar1%, which is a number greater than or equal to 100.上面的Msgbox行注意到第二次出现的MyVar1在百分号里面。这表示在该位置显示MyVar1的内容。同样的技术能用来把一个变量的内容复制给另一个。例:MyVarConcatenated = %MyVar1% %MyVar2%上面这一行给

15、变量MyVarConcatenated存储了字符串”123 my string”(没有引号)。变量值之间的比较参考这个例子:If (ItemCount ItemLimit) MsgBox The value in ItemCount, which is %ItemCount%,is greater than %ItemLimit%注意到第一行有括号,它表示if语句包含一个表达式。否则会被认为是没有表达式的if语句,因此他需要给ItemLimit加上百分号(这样的if语句局限于单一的比较运算,也就是说,它不能包含数学操作或者像“AND”和“OR”的连接词)。数学:执行一个数学操作要用冒号-等号操

16、作符(:=)来分配表达式的结果给一个变量,例:NetPrice:=Price*(1-Discount/100)查看完整数学操作符列表的表达式。剪贴板:变量Clipboard是特别的,因为它包含了当前windows剪贴板中的文本。尽管如此,它也能像一个普通变量那样使用。例如下面这一行可显示现在剪贴板中的内容:MsgBox %clipboard%要改变剪切板内容参考下面的例子,用新的文本取代当前内容:clipboard = A line of text.rnA second line of text.rn上面,r和n(重音符号后跟字母“r”或者“n”)用来表示两个特殊字符:回车和换行。这两个字符开

17、始一个新的文本行就像用户按下回车键一样。给clipboard(或其他任意变量)附加文本的例子:Clipboard = %clipboard% And here is the text to append.查看剪贴板和变量部分的更多细节。 重复一系列动作用loop执行不止一次的连续命令。下面的loop会显示消息框3次:Loop 3 MsgBox this window will be displayed three times.你也能在Loop后指定一个变量,这对于迭代次数取决于某个部分的脚本的情况很有用:Loop %RunCount% Run C:Check Server Status.exe

18、 Sleep 60000 ;等待60秒。上面,loop执行指定的次数除非RunCount为0,这种情况下loop将完全跳过。Loop也可以自己停止当一些条件改变的时候。下面的例子,当用户按住F1时会一直点击鼠标左键:$F1: ;使F1成为热键($符号促进下面GetkeyState的“P”模式)。Loop ;因为没有指定数字,这是一个无限循环除非在里面遇到“break”或者“return”。 if not GetKeyState(“F1”,”P”) ;如果用户释放了F1键则这句为真。 break;退出循环。 ;否则(即没有上面的“break”),继续点击鼠标。 Click ;在光标当前位置点击鼠

19、标左键。return上面的例子中,当loop发现用户释放F1键并通过break命令停止循环。Break导致跳出并执行loop的关闭括号后的语句。一个替换方式可以完成同样的结果那就是“while”循环:$F1:While GetKeyState(“F1”,”P”) ;当F1键被按着的时候 Clickreturn上面展示的是一般的循环。更多专门用途,考虑下面的循环:文件读取/编写循环:在文本文件中检索行,一次一个。这能用于在逐行的基础上把文件转换成不同的格式。这也能用来搜索符合条件的行。文件和文件夹循环:检索指定文件或文件夹,一次一个。这能使操作在每一个符合条件的文件或文件夹上执行。解析循环:检索

20、包含子字符串的字符串,一次一个。这能使一个像“Red,Green,Blue”的字符串简单的分解成它的三个组件字段。注册表循环:检索指定的注册表项,一次一项。 操作文件和文件夹在文件最后添加文本(或创建一个新文件),像下面的例子展示的那样使用FileAppend。注意,它使用n(换行)来在文本后面开始一个新行:FileAppend,A line of text to append.n, C:My DocumentsMy Text File.txt重写现有的文件,在FileAppend之前用FileDelete。例:FileDelete, C:My DocumentsMy Text File.tx

21、t其他的一些常用文件和文件夹命令: FileRead:读取文件的全部内容到一个变量。 文件读取循环:在文本文件中检索行,一个接一个。 IfExist:判断一个文件或文件夹是否存在。 FileSelectFile和FileSelectFolder:显示一个对话框让用户选择一个文件或文件夹。 FileDelete/FileRecycle:删除/恢复一个或几个文件。用FileRemoveDir删除整个文件夹。 FileCopy/FileMove:复制/移动一个或几个文件。用FileCopyDir/FileMoveDir来复制/移动整个文件夹。 文件和文件夹循环:检索文件夹中的文件或文件夹,一次一个。

22、 FileSetAttrib和FileSetTime:改变一个或多文件的属性或时间戳。 IniRead,IniWrite,IniDelete:创建,访问和维护标准ini格式文件。 RegRead,RegWrite,RegDelete和注册表循环:Windows注册表的操作。 其他特征的概述:在命令列表中查看每个命令的概述。常见问答(FAQ)如果你的问题不在下面的列表里,查看社区维护的AutoHotkey WiKi的FAQ 语法什么时候引号被用于命令和它的参数?双引号(”)只在表达式中有特殊含义。在其他地方,他们像普通字符一样按照字面上的意思对待。然而,当脚本打开一个程序或文件时,操作系统通常需

23、要给任何包含空格的命令行参数加上引号,像这样:Run,Notepad.exe “C:My DocumentsAddress List.txt”什么时候把变量名放在百分号内是正确的?变量名总是要包含在百分号内除非下面粗体表示的情况:1) 参数是输入,输出变量:StringLen,OutputVar,InputVar2) 在一项任务的左边:Var= 123abc3) 在传统的(无表达式)if语句左边:If Var1 %Var2%4) 表达式的任何地方,例:If (Var1Var2) Var1:=Var2 + 100什么时候百分号和逗号该转义?字面上的百分号必须通过在前面加上重音符号来转义。例:Ms

24、gBox The current percentage is 25%.字面意义上的逗号也必须转意(,)除非用在消息框或任何命令的最后一个参数(这种情况下重音符号是允许的,但不必要)。当逗号或百分号在表达式里被引号引用时,同样允许重音符号但不必要。例:Var := “15%” 常见任务为什么我脚本里有些行从不执行?任何你想在脚本开始时就立即执行的行应该出现在脚本的最上面,第一个热键,热字或Return之前。详见自动执行部分。另外,要执行超过一行的热键必须将第一行放在热键的后面,而不是同一行。例:#space: ;Win+空格Run NotepadWinWaitActive Untitled No

25、tepadWinMaximizereturn为什么Run命令不能打开我的游戏或程序?一些程序需要在他们自己的目录里被打开(不能确定的时候,通常最好这么做)。例:Run, %A_ProgramFiles%Some ApplicationApp.exe, %A_ProgramFiles%Some Application怎么检索命令行操作的输出?测试表明由于文件缓存,对于相对小的输出,临时文件可以很快。事实上,如果文件使用后立即删除,它通常不会真的被写入磁盘中。例:RunWait %comspec% /c dir C:My Temp File.txtFileRead, VarToCotainCont

26、ents, C:My Temp File.txtFileDelete, C:My Temp File.txt避免使用一个临时文件(特别是大的输出)考虑使用CmdRet或StdoutToVar。一个脚本怎么关闭,暂停或禁用其他脚本?首先,这是一个关闭另一个脚本的例子:DetectHiddenWindows On ;允许一个脚本的隐藏主窗口被检测到。SetTitleMatchMode 2 ;避免指定下面文件的完整路径的需要。WinClose Scripts File Name.ahk AutoHotkey ;映射脚本名来更新(大小写敏感)。禁用或暂停另一个脚本,用这些替换上面的最后一行:PostM

27、essage, 0x111, 65305, Scripts File Name.ahk AutoHotkey ;禁止。PostMessage, 0x111, 65306, Scripts File Name.ahk AutoHotkey ;暂停。怎么停止重复动作而不退出脚本?按一个键来暂停或继续整个脚本,像下面的例子一样给Pause命令分配一个热键:!p:Pause ;按下Ctrl+Alt+P来暂停。再按一次恢复。要停止一个在Loop里重复的动作,参考这个用一个既是开始也是停止自身重复动作的热键的例子。换句话说,按下这个热键一次开始循环,再按一次就停止。#MaxTreadsPerHotkey

28、3#z: ;Win+Z 热键(改变这个热键为你自己的首选项)。#MaxThreadsPerHotkey 1if KeepWinZRunning ;这意味着一个潜在的线程已经在运行下面的循环。 KeepWinZRunning := false ;循环停止的信号。 return ;结束该线程以便下面的一个线程继续并查看上面这一行做的改变。;否则:KeepWinZRunning := tureLoop ;下面的四行是你想重复的动作(修改他们以满足你的需要): ToolTip, Press Win-Z again to this form flashing. Sleep 1000ToolTipSlee

29、p 1000;下面的不需要要更改。if not KeepWinZRunning ;用户再次按下Win+Z通知循环停止。 break ;跳出循环。KeepWinZRunning := false ;为下次按下热键而重置。return怎么提高性能当游戏或其他cpu负载较高的时候?在cpu高负载的时候如果脚本的热键,点击或者发送明显地比正常情况下慢,提高脚本的优先级可能会有帮助。为此,在脚本的上方包含下面这一行:Process,Priority,HighAutoHotkey命令的内容敏感帮助怎么用在任意编辑器中?Rajat创作了这个脚本。怎么探测网页完成加载?对于IE也许最可靠的方法是使用DllCall和COM,演示:相关注意,地址栏和状态栏的内容可以被检索,演示:较老的,不那么可靠的方法:下面的例子展示的方法在用IE打开的大部分页面可用。类似的技术在其他浏览器可能有用:Run, MouseMove, 0, 0 ;防止状态栏显示一个鼠标悬停的链接而不是“已完成”。WinWait, yahoo!-WinActivateStatusBarWait, Done, 30if ErrorLevel MsgBox The wait timed out or the window was closed.

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1