转自:小弗兰茨

AHK,就是传说中的 Auto Hot Key 。什么?没有听说过?那么很正常……
它运行在Windows下。
总之,AHK可以赋予你对你的电脑的无与伦比的控制力。一些人想要在MM面前展示技术的,我是说很炫的技术——一般人能看懂的技术的,那么学一学AHK吧。

快速入门之:开始

首先,你需要去下载AHK,我想这个不用我告诉你了。搜索一下吧,很容易找到的。

快速入门之:脚本

AHK是靠脚本中写的东西来执行的。所以我们必须得有一个脚本。
脚本就是普通的txt文件类型的,但后缀名必须是 .ahk 。
现在我们开始我们的第一个脚本,镜湖之快速启动

新建脚本
我们随便找个地方,新建一个txt文件,把名字命名为 onjinghu.ahk (名字没有关系。(或者是新建一个Auto hot key 脚本文件)
注意,后缀名一定要是ahk,如果你的电脑没有显示后缀名,到文件夹选项里面改掉。
然后,右击这个文件,选择编辑。在记事本里输入以下字符
#z::Run www.onjinghu.com
保存。关闭。

脚本解释
那个井字符 # 代表键盘上的Windows键(就是那个要飘走的,长的像微软公司标志的那个键),z自然代表z键了。两个冒号相当于分隔符,而Run的意思是运行,打开。
这句话的意思就是当按下Windows+z键的时候,就会启动镜湖的网站。

运行脚本
然后双击 onjinghu.ahk 。(绿色版的,或者用win7的会比较复杂,下面详谈)。
此时,系统托盘里出现了一个绿底的H标志,这说明我们的脚本已经在运行了。此时按下Windows和Z键,你会发现,果然打开了镜湖的主页,当然,要是你联网的话,你就可以浏览镜湖了。

更多
如果你是绿色版的,或者是win7系统,可以用如下方法运行。
在AutoHotKey的安装文件夹里,有一个Compiler文件夹,打开,再打开里面那个Ahk2Exe.exe文件
选择好Source(也就是onjinghu.ahk文件)然后选择destination(就是随便输入一个名字),然后点击Convert。这会将一个ahk文件转换成为exe文件,然后双击这个exe文件就可以了。
在系统里,可以同时运行多个脚本。
如果要退出脚本,在托盘里右击图标选择退出即可。

快速入门之:执行文件与打开文档

ps:下载地址:http://dl.pconline.com.cn/html_2/1/65/id=39876&pn=0.html

总之,标题的意思就是打开一个文件。
Run命令用来打开文件。
比如
#q::Run C:/Program Files/Tencent/QQ/Bin/QQ.exe
在我的电脑上,按下Windows+Q键可以打开QQ。
^符号代表control键(即Ctrl), !符号代表Alt键。那么我们可以用如下语句:
^!c::Run calc.exe
这表示用Alt+Ctrl+C键可以打开计算器。

耍酷方法之一
现在,你可以把桌面图标都隐藏掉,然后,用快捷键来打开所有的东西了。
右击桌面空白处,=》排列图标=》显示桌面图标。现在桌面上什么都没有了。然后呢?
然后我们新建一个文件,内容如下
#q::Run C:/Program Files/Tencent/QQ/Bin/QQ.exe
#c:/Users/xc/AppData/Roaming/Maxthon2/Maxthon.exe
等等……不一而足。这样MM打开你的电脑后,只看到一个赤裸裸而华丽丽的桌面,会非常惊讶……
不过要附带说一句,Windows键和好多键都是系统预先定好的组合键,比如Windows+D是刷新桌面,Windows+M是显示桌面,Windows+F是搜索。如果你要AHK使用这些快捷键的话,它会把这些Windows自带的快捷键屏蔽掉。

一键打开多个程序
可以这样
#c::
Run exe1
Run exe2

更多
在QQ的那个例子里,你可以用
#q::Run %A_ProgramFiles%/Tencent/QQ/Bin/QQ.exe
来代替。%A_ProgramFiles%这种用双引号括起来的东西叫内建变量,反正就是系统已经预先定好的东西,总之,它就代表哪个C:/Program Files,也许有人会认为它是多此一举。但这不仅仅是少输入几个字符的事情,有一些变态(开玩笑的话),会把系统变量更改,这样系统会自动都把软件安装到D:/Program Files中去。所以,用%A_ProgramFiles%的脚本在别人的电脑上就不会有不能运行的困扰。

快速入门之:发送键盘鼠标消息

那么好的,我想大家都放弃了要完全用快捷键操作的方法,那么,我们来看看发送鼠标键盘消息吧
^!s::
Send ^_^!!!{Enter}www.onjinghu.com
return
在上例中,^!s代表Ctrl+Alt+S,当按下这个键时,会自动输入以下文字:

^_^!!!
www.onjinghu.com

这样,我们写信的时候好像就可以轻松多了。
在上例中,{Enter}代表回车符,Send的语意是发送键盘消息,所以跟输入法还有关系哩。至于那个return,就不要管它了。爱问十万个为什么的天才们可以自己试验,看看没有它会发生什么问题。

还有人,忍受c语言很久了,一直想给自己提速。我们只需要这样:
^!s::
Send {#}include{Space}<stdlib.h>{Enter}int{Space}main(int{Space}argc,{Space}char{Space}*{Space}argv){{}{Enter}{Tab}//ToDo:{Enter}{Tab}{Enter}{Tab}return 0;{Enter}{}}{Up}{Up}{Right}
return

有人能看出它的真面目吗?自己亲自试验一下就知道了。它的输出结果如下(在英文输入法状态下,而且你要打开一个记事簿什么的):
(已有现成工具:TabKey Appinn、Tester比输入法里自定义短语功能可强多了)
#include <stdlib.h>
int main(int argc, char * argv){
    //ToDo:
    
    return 0;
}
同学们,我们亲手打败了微软的IDE……囧。
上面{#}就是#,因为是特殊符号,所以要括起来,同样的符号还有!+^{} 这5个。而一些控制符,也是属于特殊符号的,比如{Space}代表空格,{Enter}代表Enter键,太键了,{Delete}是哪个键,我不说你也知道了,还有方向键是{Up}等。完全的表请自己去看帮助文档。

有人还想问怎么输入中文呢?那就是这样的,比如,大肚子同学要和他的女朋友打招呼,想要得到:

晚安,亲爱的
爱你的 大肚子

我们只需要把中文输入法(不要是智能ABC,只能是搜狗拼音)打开,然后
^!s::
Send wanan{Space},qinaide{Space}{Enter}aini{Space}de{Space}{Space}da{Space}duzi{Space}
return

结论是,没有做不到,只有想不到。再配合方向键,退格键,我们几乎可以输入任何想要的汉字。
不过美中不足的是,我们不能切换输入法,不过,这难不倒我们,大家想想呗。

想好了吗?想好我们就可以对小熊猫表白了,首先建立一个这样的脚本

F4::
Run notepad.exe
WinWait 无标题 - 记事本,,2
Send ^{Space}woaini{Space},xiao{Space}xiongmao{Space}
return
然后我们把小熊猫叫到电脑前,请他按下F4键,哈哈,他会不会脸红呢?
第三句WinWait的意思是等待一个窗口的出现,这个窗口的名字是无标题 - 记事本,如果2秒后还没出现,就接着运行。

AHK教程 - imsoft.cnblogs的更多相关文章

  1. 多个Tomcat同时运行环境配置 - imsoft.cnblogs

    解压下载好的Tomcat压缩包,两次.此例中分别命名为tomcat和tomcat2. 1. 在MyEclipse中配置好第一个Tomcat环境,可以正常运行项目后. 2. 再配置tomcat2这个项目 ...

  2. winrar在右键菜单上加上:打包自动加上日期时间标签【图文教程】 - imsoft.cnblogs

    说明:  注册表HKEY_CURRENT_USER\Software\WinRAR\Profiles\0找到GenerateArcName修改0为1,修改GenerateMask为你想要的日期式(默认 ...

  3. SecureCRT最佳配色方法+直接修改默认配置方法 - imsoft.cnblogs

    SecureCRT默认显示效果是黑白且刺眼的主题,看起来很不舒服.经过一番搜索,总结结果如下,直接设置默认属性,设置一次,不需再改. 效果图: 具体操作方法: Options->Global O ...

  4. MyEclipse多次重装、删除注册表、重装系统激活都不成功,终极解决方法 - imsoft.cnblogs

      问题:注册成功的MyEclipse被修改了一个配置文件之后,激活失败,然后在网上找激活码,激活不成功,但激活文件一直保存在电脑中,每次打开MyEclipse的激活界面总看得到之前的激活码.后面尝试 ...

  5. 八、MyEclipse多次重装、删除注册表、重装系统激活都不成功,终极解决方法 - imsoft.cnblogs

    MyEclipse(2010,2014)激活不成功的结论: [问题原因]激活不成功时,主要是激活的密钥文件.myeclipse.properties不在指定的位置.(一般都在D.E.F.G等盘符根目录 ...

  6. iPhone不为人知的功能常用技巧,看完后才发现很多用iPhone的人实在是愧对乔布斯! - imsoft.cnblogs

    很多人花了四五千买部苹果,结果只用到四五百块钱的普通手机功能. iPhone不为人知的功能,常用技巧: 网上搜集整理的iPhone快捷键操作,虽然表面上iPhone按键只有一个HOME键,大部分操作都 ...

  7. X-Mirage苹果屏幕录制工具7天试用期破解 imsoft.cnblogs

    X-Mirage (PC) 能让你的 Windows 变成一个 iPhone.iPad 或者 iPod Touch 的屏幕镜像,应用程序.游戏.照片.视频等等一切可以在 iOS 移动端显示的东西,都镜 ...

  8. 一定要记住这20种PS技术,让你的照片美的不行! - imsoft.cnblogs

    照片名称:调出照片柔和的蓝黄色-简单方法, 1.打开原图素材,按Ctrl + J把背景图层复制一层,点通道面板,选择蓝色通道,图像 > 应用图像,图层为背景,混合为正片叠底,不透明度50%,反相 ...

  9. WinRAR备份技巧 - imsoft.cnblogs

    RAR控制台日常备份策略 run.batrar a -ep1 -agYYYY{年}MM{月}DD{日} 备份 @list.txt-ep1是忽略原文件路径,rar包里是一堆文件,没有目录结构-ag附加命 ...

随机推荐

  1. js 中的 堆栈

    1.含义及对比 堆和栈都是运行时内存中分配的一个数据区,因此也被称为堆区和栈区: 二者存储的数据类型和处理速度不同: 堆(heap)用于复杂数据类型(引用类型)分配空间,例如数组对象.object对象 ...

  2. 关于QT的QPainterPath::arcTo 详解

    这个函数文档的意思就是画弧,看了文档也不太明白,自己做了demo终于明白了意思 移动到圆心,画180度半圆 void TestArcTo::paintEvent(QPaintEvent *) { QP ...

  3. openstack 问题一览(持续总结中)

    ★名词 Qemu:它也是一种虚拟化技术,主要提供对IO,网络等外设的虚拟化管理.结合KVM(对CPU和内存管理),提供较为完整的虚拟化管理功能. Libvirt:提供了针对各种虚拟机技术的接口,来管理 ...

  4. mount ntfs-3g , fstab里的配置没有效果

    把ntfs-3g配置在 fstab 里,mount 时会报 No such device 网上也有在嵌入式系统里发生的类似例子. 没有解决方法,也不准备再研究了. 准备在机器启动之后,手动下面的命令 ...

  5. Lua脚本语言入门学习其应用教程

    Lua脚本可以很容易的被C/C++代码调用,也可以反过来调用C/C++的函数,这使得Lua在应用程序中可以被广泛应用.不仅仅作为扩展脚本,也可以作为普通的配置文件,代替XML,Ini等文件格式,并且更 ...

  6. Vue.js Cookbook: 添加实例属性; 👍 axios(4万➕✨)访问API; filters过滤器;

    add instance properties //加上$,防止和已经定义的data,method, computed的名字重复,导致被覆写.//可以自定义添加其他符号. Vue.prototype. ...

  7. 4-3 atom订阅源

    部分章节还没有实做练习. 网上购买了安道的Rails指南中文版.联系了这个作者问了一个问题Rails5的翻译问题. try(), 判断是否存在,不存在的话返回nil.例子:pasting @perso ...

  8. UVA-10118 Free Candies (DP、记忆化搜索)

    题目大意:有4堆糖果,每堆有n个,有一只最多能容5个糖果的篮子.现在,要把糖果放到篮子里,如果篮子中有相同颜色的糖果,放的人就可以拿到自己的口袋.如果放的人足够聪明,问他最多能得到多少对糖果. 题目分 ...

  9. HDU-4471 Yet Another Multiple Problem (BFS+路径还原)

    Problem Description There are tons of problems about integer multiples. Despite the fact that the to ...

  10. ASP.NET的内置对象 —— Request 对象

    Request 对象最大的用途在于提交表单信息. (可获取页面间传递的值.客户端的 IP 地址等) 3.2.2 获取页面间传送的值 获取页面传送参数值是 Request 对象最广泛的应用之一. ASP ...