什么应用可以不用手机按键精灵自动退出也可以退出所有东西。

200){this.value=this.value.slice(0,199)}">
¥1049.00
此商品已下架
键盘相关推荐
主体:;品牌:新贵(Newmen);颜色:红光;连接方式:有线;规格:;接口:USB接口;类型:有线键盘;
主体:;品牌:富勒(Fuhlen);颜色:黑色;连接方式:有线;规格:;接口:USB接口;类型:游戏键盘;
主体:;品牌:罗技(Logitech);颜色:黑色;连接方式:有线;规格:;接口:USB接口;类型:有线键盘;产品尺寸:480*25*191(mm);产品重量:836g;特性:;产品特性:6个可编程G键,防多键输入冲突(最多5键同按),防误按Windows禁用键,长寿命可调背光,WASD和方向键突出颜色;
主体:;品牌:讯拓(SUNT);颜色:黑色;连接方式:有线;规格:;接口:USB接口;
主体:;品牌:黑爵;颜色:黑色;连接方式:有线;规格:;接口:USB接口;
相关专题推荐
相关知识推荐
  很多人都喜欢在聊天或使用文本工具的时候,用省略号来代替一些话。不过省略号在键盘上怎么打相信还是有很多人对此并不了解。今天小编就为大家简单介绍下。  步骤一:省略号并不是在英文输入法下我们去打六个小圆点......,细心的朋友可以发现,省略号是“……”的,每三个小圆点之间有一定的间距,为此,在项文状态下连续打出的六个小点是不正确的,就算您每打三个小点就空格一下,这样虽然看起来与省略号差不多,但是,是否也太麻烦了,亲……。好了,那么,平时,当我们需要用到省略号时,到底怎么样才能打出正确的省略号呢?  其实,省略号是中文输入法中的符号,为此,我们只有把输入法切换到比如五笔输入法或拼音输入法的时,打出省略号才会更省力一些。  打出省略号之步骤一:我们先把输入法切换到中文状态;  步骤二:按下您键盘上的SHIFT+6键,上面有一个^符号,在中文状态下,打出来就是省略号……了啦~  当然,我们平时在WORD或在使用QQ聊天时,如果要打出省略号,其方法与上面说的一样啦,您只需要中文输入法中,按下SHIFT+6组合键就打出来啦,如果还是输出^的话,您再按下CTRL+。(句号),这样就可以切换到全角状态,肯定能打出省略号了。省略号在键盘上怎么打?
随着电脑这种3C产品的普及,大部分文档都是通过电脑来完成的。在文本处理中,顿号时经常会用到的标点符号,很多网友说电脑键盘上找不到“、”顿号的按键,其实这说明大家用的键盘都是标准键盘,“、”顿号是不体现在上面的,顿号在键盘上怎么打?小编为大家简单介绍几种方法。  在中文环境中的顿号是通过按下回车键上面的“\”键实现的,想要打出“、”顿号输入法必须处于中文状态。我们可以用键盘输入,但是需要将输入法切换到中文状态,下面小编就为大家讲解键盘上顿号怎么打出来。  下面为大家详细介绍当使用不同输入法时,究竟顿号怎么打呢。输入法包括:谷歌拼音、搜狗、智能ABC等。  1.谷歌拼音输入法的顿号怎么打:  切换到谷歌拼音后,将光标移动到正文中,任意按下一个字符,谷歌拼音会弹出选词菜单,鼠标右键点击选词菜单,弹出对话框后,选择“切换为中文标点”即可,在按下“\”键就能打出顿号了。  2.搜狗拼音输入法的顿号怎么打:切换到搜狗拼音输入法后,将光标移至正文中,此时搜狗拼音也会弹出浮动工具菜单,跟智能ABC的操作方式一样,把标点符号设置为“中文标点”后,按下回车键上方的“\”键即可打出顿号来。  3.智能ABC输入法的顿号怎么打:  首先,切换到智能ABC输入法,然后将光标移动至正文中,此时智能ABC浮动菜单将出现,将浮动菜单中的标点符号切换到中文标点“。,”注意是空心的句号,然后在按下回车键上方的“\”键即可打出顿号来。  总结:  顿号怎么打、顿号怎么打出来的问题其实很简单,最重要的是必须将输入法设置为中文标点,如果使用的是中文输入法,但又无法打出顿号来,请仔细检查标点符号是否为中文标点。
  键盘中Alt按键经常被用在和Ctrl组合使用,因此也被称为功能键。Alt按键是切换、选择的英文缩写,因此它在功能上具有转换和替换的功能。那么键盘中Alt按键有什么作用?小编带大家了解下。  在没有鼠标的情况下,可以使用Alt键打开软件的菜单。在电脑键盘中Alt键在键盘上有一左一右两个。在美国制的键盘中,左右两边的键用途是一样的。但是,大部分欧洲的键盘上,右边的Alt键都标名为Al+Gr,它的作用和转换键(Shift键)差不多——同时按下转换键和字母键就可选择大写或小写,最后一起再来看看Alt键有什么功能吧。  1.万能抓图热键  在运行游戏或其它应用软件中,当屏幕上出现精美的画面时按下键盘上的Alt+PrintScreen组合键,就可以把当前活动窗口或对话框的内容拷贝至剪贴板,然后调用“画笔”或其它绘图程序,选取“编辑”菜单中的“粘贴”项,即可调出一幅漂亮的画面来。当然,如果只是按下PrintScreen键,就是全屏抓图。  2.终止某一进程  按下Ctrl+Alt+Del组合键即可弹出一个“关闭程序”对话框,选取某一进程,然后点击“结束任务”即可快速终止该进程。而再次按下Ctrl+Alt+Del组合键则可重新启动计算机。  3.弹出下拉列表  在对话框中,可以通过Alt+向下箭头键来弹出所选的下拉列表,以免去移动鼠标寻找并点击列表框下箭头按钮之苦。  4.快速查看属性  按下Alt+Enter组合键或在按住Alt键的同时鼠标左键双击某对象(如资源管理器右边窗口中的文件夹、文件、桌面上的图标等,左边窗口中的文件夹不行),则可快速打开其“属性”对话框其作用相当于点鼠标右键,并选取“属性”。  5.切换DOS窗口  按下Alt+Enter组合键可以在窗口和全屏幕方式下切换MS-DOS。  6.激活操作命令  按下Alt键可以激活活动窗口的菜单栏,使菜单栏的第一个菜单成为高亮条,而按下Alt键和一个字母就可以激活这个字母所代表的菜单项,如按下Alt+F就可以激活当前窗口的“文件(File)”菜单。此外,在对话框中,同时按下Alt键和带下划线的字母则可以选定该选项并执行相应的操作。  7.关闭应用程序  按下Alt+F4键可以最快的方式关闭任何应用程序,而不用在文件菜单或工具条中寻找并单击“退出”或“关闭”。  8.切换应用程序  按住Alt键不放,再连续按下Tab键则可以在一个对话框中显示出当前已经运行的所有程序的图标和当前激活的程序的图标及其名称,只要释放Alt键便可以立刻切换到该应用程序中,称之为“冷切换”。  10.打开控制选单  在应用程序中,按下Alt+空格键可以直接打开系统控制选单。  11.撤消上步操作  在Windowsxp以上系统的各个对话框中,凡是对编辑框的操作都可以通过Alt+Backspace键来撤消,其效果和Ctrl+Z完全一样。该功能同样适用于微软的各字处理软件,如记事本、书写器、WORD等。另外,也可用该组合键来撤消文件移动或重命名等文件操作。  12.切换辅助选项  对需要使用辅助选项快捷键的特定用户来说,Alt键同样可以助一臂之力。比如,按下左Alt+左Shift+Printscreen键可切换高对比度开关;按下左Alt+左Shift+NumLock键可切换鼠标键开关。  13.在Word中的应用  选择文本时,如果先按下Alt键再拖动鼠标,则为列选择方式(否则为行选择方式);在拖动标尺或表格线时,无法看出其准确的数据,但如果先按下Alt键再拖动或点击,则可获得精确的数据。  以上是小编为大家整理的键盘Alt按键的作用,希望可以帮助到大家。
  Fn是功能英文的缩写,几乎所有的电脑键盘都有着他的身影,不过对于它的使用和作用却不是很清楚,那么键盘中Fn有什么作用呢?  简单地说Fn按键的作用就是和其他的按键组成组合键以便实现控制作用。  而笔记本电脑的独立快捷键则往往提供来快速启动应用程序或者实现特定功能,它们往往是可以由用户自定义的,但相比FN键,独立快捷键变化更多,同一品牌中的FN键往往是相同的,而快捷键则可能每一个系列都不同。  笔记本的FN键共同特征  FN键在笔记本电脑中不担任输入作用,它和Ctrl键一样属于纯粹的组合键,FN键和其他按键组成的组合键可以是直接得到BIOS支持的(这是大多数品牌的做法),也可以是软件级别的(例如SONY的做法),当然现在最多的形式是混合式,也就是说部分组合键直接被BIOS支持在任何环境下都可以使用,部分组合键则需要在操作系统中得到额外软件的支持才能生效。大多数FN组合键是使用FN键加上ESC或者F1~F12键来实现的,但是也有一些厂商(例如IBM、COMPAQ和SONY)的机型有一些和FN键和字母键组合的形式,而且这些组合大多数对于一般用户是“密技”:),在这篇文章中我们也会和大家分享这些特殊的组合键。FN键的组合方式和所对应的功能一般在整个品牌之中都是统一的。  笔记本电脑的FN键一般只有一个,设置在键盘的左下角的Ctrl和Windows键之间:  当然也有特殊的,例如IBM把它放在键盘最左边Ctrl键的左侧:  一些日系韩系的超轻薄机型则喜欢在键盘右侧的上下左右方向键旁边设计第二个FN键。  在笔记本电脑中,FN快捷键通常有两种作用,一种是实现硬件的调节和切换功能,例如屏幕亮度的调节,显示器切换,休眠和待机等,另外一种是补充一些标准台式机键盘上有但笔记本电脑上没有的键,例如Numlock,Scrlock,Break甚至是PageUp和PageDown键在笔记本电脑上常用FN键和其他键组合来实现,有些机型还可以通过FN键和部分字母键的组合来实现数字小键盘的功能。为了操作直观便利,几乎所有的笔记本电脑都将FN键用不同的颜色印刷(最常见是浅紫色或者浅蓝色),并且把可以和FN键组合的键局部用相同颜色印刷出组合后功能的图标,这样看起来就很直观。  以上便是小编为大家介绍的键盘中Fn按键的作用,希望对大家有所帮助。
  对于工作生活中比较马虎的人们,防水键盘可谓是必备办公配件之一。当然对于吃货来说,防水键盘虽然并没有和他们有直接的的关系,但是当键盘里满是食物碎渣的时候防水键盘就到了作用。对于散落在键盘里面的食物,直接用水冲洗防水键盘才是刚好的选择。不过防水键盘有两种款式需要根据自身需要挑选。那么防水键盘有哪两种防水款式呢?小编为大家简单介绍下。  防水措施分两类按照防水能力的不同,目前主要有两种防水模式,一种是溅泼式防水,另一种是浸泡式防水。  1.溅泼式防水  从外形上来看,具有防水功能的键盘与普通键盘几乎相同,需要仔细观看才能发现它的不同。将防水键盘翻过来,可以看到它的底部多了许多小孔,这就是导流孔。这些孔是和键盘按键的底部基板的孔贯通的,当有水不小心倒在键盘上时,水就会从按键的间隔流入到底部基板上,接着就从这些小孔流出去。  由于防水键盘的底部基板经过特殊处理——按键的键柱支架要高于基板大约7mm,所以只要水不漫过键柱支架,就可以保证键盘的安全,不让水进入键盘的内部。我们做了一个试验,人为模拟意外情况,将一杯水倒在键盘上,水在还没有漫过键柱支架之前,就经过众多的导流孔流了出去,并不会对键盘的使用造成影响。  2.浸泡式防水  前面的防水功能属于溅泼式防水,针对用户在日常使用中无意间将水洒在键盘上,水量不会太大,属于初级防水。而下面这种防水设计就比较强悍了,即便水量较大,它也可以有效抵挡。打开这种键盘可以看到,它的内部也经过了特殊设计。首先是按键薄膜电路与控制电路板之间的连接部分——金手指,金手指上面压着两层东西,第一层是胶垫,它可保护金手指免受水的侵害。第二层是麦拉片(金属片),它让胶垫和金手指紧密接触。  不过最关键的还是薄膜电路部分的防水,一旦水漫过键柱支架,就会首先进入到这部分电路中,从而造成短路。这款键盘的薄膜电路经过了防水处理,在最容易进水的导流孔和薄膜周边都有蓝色的封胶,起到了密封的作用,这样的设计相对未封胶处理的薄膜电路,防水能力大大提升。  在键盘的底部有一个“透气孔”,当将键盘长时间放在水中时,用一个“深水塞”堵住透气孔,就可以避免薄膜电路进水。这是因为当封胶薄膜电路完全密闭时,它的内部就会有一团空气,气压就可以将水挡在外面。举个例子,将喝饮料的吸管一头用手指堵住,然后将它垂直插入水中,这时水也并不会从吸管另一头的开口处进入,这就是气压的作用。浸泡式防水键盘也就是基于这种原理。  防水塞利于键盘深度防水,结论对键盘的日常使用,溅泼式防水功能很实用也非常有必要,但真正会使用到浸泡式防水功能的机会可能并不会太多。不过这种设计却比较适合键盘的清洗工作,因为键盘摆放在桌面上,很容易沾染灰尘或污物,放在水中就可以更彻底地把它清洗干净。需要注意的是,在将键盘浸泡后,需要等待键盘中的水蒸发完后,才能将防水塞取下,否则积水同样会侵入电路,建议厂家在说明书、包装上注明这一点。  以上是小编介绍的防水键盘两种款式,希望对大家有所帮助。
键盘商品评价
使用心得:用户未及时评价,显示为默认评价。
使用心得:用户未及时评价,显示为默认评价。
139****9366
使用心得:用户未及时评价,显示为默认评价。
使用心得:特别好
qq-***662...
使用心得:手感柔软非常好用
键盘购买咨询
暂无咨询!
国美为您提供键盘等信息,全部商品品质保证,严格把关保质期。国美,让您放心购物!
大家都在买
大家都在看
支付与账户
扫描下载客户端
本公司游戏产品适合18岁以上成年人使用&&违法和不良信息举报电话:021-&&
国美在线电子商务有限公司&&办公地址:上海市嘉定区沪宜公路号一楼A区&&客服电话:&&
(C)&&国美在线电子商务有限公司版权所有&&京公安网备62&&沪ICP备号&&沪B2-号用键盘上的什么键,就可以不用鼠标直接关闭打开的窗口? 另:当任务栏上有许多窗口时,如何不用鼠标进行选择?
其他答案(共6个回答)
有不同的关闭窗口的快捷方法。
打开任务栏中的窗口可用:alt + ta进行切换。
■没记错的话,好像还没有这样的快捷键能关闭所有窗口,我的做法是:用“Ctrl+Alt+Del”打开任务管理器——→应用程序——→按住Shift键再用鼠标点就可以...
微软操作系统中没有设置打开/关闭软键盘的快捷键………………
所以不光全拼,其它输入法也不行,只能用鼠标点。
其它快捷键:
在输入法之间轮流切换:Ctrl+Shi...
直接删除的快捷键,他们的都对。或者是在用鼠标删除时按住Shift键。
Word的快捷键很多,下面是一些常用的:
Ctrl+B 使字符变为粗体。
Ctrl+I 使...
windows徽标键+M 是最小化,再一次是回复最后窗口;
windows徽标键+E是打开浏览器(跟直接双击我的电脑作用差不多)
windows徽标键+F是搜索...
如果是切换浏览器的不同标签,用ctrl+tab,如果是切换不同软件或是桌面要用三个组合键ctrl+alt+tab。
答: 就叫“音频线”
答: 想学习这个么?可以找我。国家中级网工,大量的实践经验
答: 同电脑故障、网线故障和路由器故障都有可能。
大家还关注
Copyright &
Corporation, All Rights Reserved
确定举报此问题
举报原因(必选):
广告或垃圾信息
激进时政或意识形态话题
不雅词句或人身攻击
侵犯他人隐私
其它违法和不良信息
报告,这不是个问题
报告原因(必选):
这不是个问题
这个问题分类似乎错了
这个不是我熟悉的地区
相关问答:123456789101112131415当前位置: >>
按键精灵脚本编写方法
按键精灵学习教程一、 键盘命令(2~5 页) 二、鼠标命令(5~13 页) 三、控制命令(13~22 页) 四、颜色/图像命令(22~28 页) 五、其他命令(28~355 页)五、网游脚本实例(35~最后) 一、 键盘命令命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)G e t L a s t Ke y 检 测 上 次 按 键检测上次按键 参数 1 整数型,可选:变量名 无 复制代码 1. 2. 3. 4. 5. //脚本运行到这一行不会暂停,调用的时候立即返回,得到调用之前最后一次按下的按键码保存在变量 Key 里。 Key=GetLastKey() If Key = 13 Then Msgbox &你上次按下了回车键& End If脚本例子: (7.x 语法)复制代码 1. 2. 3. 4. 5. //脚本运行到这一行不会暂停,调用的时候立即返回,得到调用之前最后一次按下的按键码保存在变量 Key 里。 GetLastKey Key If Key = 13 Msgbox &你上次按下了回车键& EndIf命令名称: 命令功能: 命令参数:K e yD o w n 按 住键盘按住 参数 1 整数型,键盘虚拟码(8.X 支持 按键字符) 参数 2 整数型,次数返 回 值: 脚本例子: (8.x 语法)无 复制代码 1. 2. 3. 4. 5. //KeyDown、KeyDownS、KeyDownH //KeyDownS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和 USB 接口的键盘都 可以使用 //KeyDownH: 硬件模拟方式,仅支持 PS(圆口)的键盘 点击查看使用硬件模拟方式的注意事项 KeyDown 65,1 //65 是 A 键的按键码,上面的语句表示按住 A 键 1 次 6. 7. 8. KeyDown &A&,1 //上面的支持按键字符,语句表示按住 A 键 1 次脚本例子: (7.x 语法)复制代码 1. 2. 3. 4. 5. //KeyDown、KeyDownS、KeyDownH //KeyDownS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和 USB 接口的键盘都 可以使用 //KeyDownH: 硬件模拟方式,仅支持 PS(圆口)的键盘 点击查看使用硬件模拟方式的注意事项 KeyDown 65,1 //65 是 A 键的按键码,上面的语句表示按住 A 键 1 次命令名称: 命令功能: 命令参数:K e yPr e s s 按 键键盘按键 参数 1 整数型,键盘虚拟码(8.X 支持 按键字符) 参数 2 整数型,次数返 回 值: 脚本例子: (8.x 语法)无 复制代码 1. 2. 3. 4. 5. 6. 7. 8. KeyPress &A&,1 //上面的支持按键字符,语句表示按 A 键 1 次 //KeyPress、KeyPressS、KeyPressH //KeyPressS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和 USB 接口的键盘都 可以使用 //KeyPressH: 硬件模拟方式,仅支持 PS(圆口)的键盘 点击查看使用硬件模拟方式的注意事项 KeyPress 65,1 //65 是 A 键的按键码,上面的语句表示按 A 键 1 次脚本例子: (7.x 语法)复制代码 1. 2. 3. 4. 5. //KeyPress、KeyPressS、KeyPressH //KeyPressS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和 USB 接口的键盘都 可以使用 //KeyPressH: 硬件模拟方式,仅支持 PS(圆口)的键盘 点击查看使用硬件模拟方式的注意事项 KeyPress 65,1 //65 是 A 键的按键码,上面的语句表示按 A 键 1 次命令名称: 命令功能:K e yU p 弹 起键盘弹起 命令参数:参数 1 整数型,键盘虚拟码(8.X 支持 按键字符) 参数 2 整数型,次数返 回 值: 脚本例子: (8.x 语法)无 复制代码 1. 2. 3. 4. 5. 6. 7. 8. KeyUp &A&,1 //上面的支持按键字符,语句表示松开 A 键 1 次 //KeyUp、KeyUpS、KeyUpH //KeyUpS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和 USB 接口的键盘都可 以使用 //KeyUpH: 硬件模拟方式,仅支持 PS(圆口)的键盘 点击查看使用硬件模拟方式的注意事项 KeyUp 65,1 //65 是 A 键的按键码,上面的语句表示松开 A 键 1 次脚本例子: (7.x 语法)复制代码 1. 2. 3. 4. 5. //KeyUp、KeyUpS、KeyUpH //KeyUpS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和 USB 接口的键盘都可 以使用 //KeyUpH: 硬件模拟方式,仅支持 PS(圆口)的键盘 点击查看使用硬件模拟方式的注意事项 KeyUp 65,1 //65 是 A 键的按键码,上面的语句表示松开 A 键 1 次命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)WaitKey 等 待 按 任 意 键等待按任意键 参数 1 整数型,可选:变量名 无 复制代码 1. Key=WaitKey() 2. 3. 4. 5. //脚本运行到这一行会暂停,当用户按下键盘后继续执行,并且把用户的按键码保存在变量 Key 里 If Key = 13 Then MessageBox &恭喜你按下了回车键& End If脚本例子: (7.x 语法)复制代码 1. WaitKey Key 2. 3. //脚本运行到这一行会暂停,当用户按下键盘后继续执行,并且把用户的按键码保存在变量 Key 里 If Key = 13 4. 5.Msgbox &恭喜你按下了回车键& EndIf二、鼠标命令命令名称: 命令功能: 命令参数:G e t Cur s o r Po s 得 到 鼠 标 位 置 坐 标得到当前鼠标所在的位置坐标 参数 1 整数型,返回 x 坐标 参数 2 整数型,返回 y 坐标返 回 值: 脚本例子: (8.x 语法)无 复制代码 1. GetCursorPos mx,my 2. //把当前鼠标位置的 x 和 y 坐标放在变量 mx 和 my 中脚本例子: (7.x 语法)复制代码 1. VBSCall GetCursorPos(mx,my) 2. //把当前鼠标位置的 x 和 y 坐标放在变量 mx 和 my 中命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)G e t Cur s o r S ha p e 得 到 鼠 标 形 状得到当前鼠标的形状特征 参数 1 整数型,参数 整数型,鼠标的形状值 复制代码 1. 2. 3. 4. 5. 6. 7. //参数: 0 是 6.83 之前的版本默认的参数 //参数: 1 可用于一些在参数 0 下无法区分鼠标形状代码的情况 //下面是我们普通的 WINDOWS 鼠标形状特征 //不同电脑上鼠标形状特征也许不同,请使用&抓点抓色&功能抓取正确的鼠标形状特征 Shape1 =
//下面是我们访问网页超链接时候的手型鼠标形状 Shape2 =
8. 9. 10. 12. 14.shape=GetCursorShape(0) If shape = shape1 Then MessageBox &当前鼠标形状是普通的 WINDOWS 鼠标& MessageBox &当前鼠标形状是手型鼠标& MessageBox &不认识当前鼠标形状!&11. ElseIf shape = shape2 Then 13. Else 15. End If脚本例子: (7.x 语法)复制代码 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 12. 14. //参数: 0 是 6.83 之前的版本默认的参数 //参数: 1 可用于一些在参数 0 下无法区分鼠标形状代码的情况 //下面是我们普通的 WINDOWS 鼠标形状特征 //不同电脑上鼠标形状特征也许不同,请使用&抓点抓色&功能抓取正确的鼠标形状特征 Shape1 =
//下面是我们访问网页超链接时候的手型鼠标形状 Shape2 =
VBSCall Shape=GetCursorShape(0) If shape = shape1 MessageBox 当前鼠标形状是普通的 WINDOWS 鼠标 MessageBox 当前鼠标形状是手型鼠标 MessageBox 不认识当前鼠标形状!11. ElseIf shape = shape2 13. Else 15. EndIf命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)G e t L a s t Cl i ck 检 测 上 次 按 过 的 鼠 标 键检测上一次按下的鼠标代码 参数 1 整数型,可选:变量名 无 复制代码 1. Mouse=GetLastClick() 2. 3. 4. If Mouse =32770 Or Mouse =32769 Then Msgbox &你按下了鼠标左键& End If脚本例子: (7.x 语法)复制代码 1. GetLastClick Mouse 2. If Mouse =32770 Or Mouse =32769 3. 4.Msgbox &你按下了鼠标左键& EndIf命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)L e f t Cl i ck 左 键 单 击模拟点击鼠标左键 参数 1 整数型,次数 无 复制代码 1. 2. 3. 4. 5. //LeftClick、LeftClickS、LeftClickH //LeftClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和 USB 接口的鼠标 都可以使用 //LeftClickH: 硬件模拟方式,仅支持 PS(圆口)的鼠标 点击查看使用硬件模拟方式的注意事项 LeftClick 5 //在当前鼠标的位置单击鼠标左键 5 次脚本例子: (7.x 语法)复制代码 1. 2. 3. 4. 5. //LeftClick、LeftClickS、LeftClickH //LeftClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和 USB 接口的鼠标 都可以使用 //LeftClickH: 硬件模拟方式,仅支持 PS(圆口)的鼠标 点击查看使用硬件模拟方式的注意事项 LeftClick 5 //在当前鼠标的位置单击鼠标左键 5 次命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)L e f tD o ub l e Cl i ck 左 键 双 击模拟双击鼠标左键 参数 1 整数型,次数 无 复制代码 1. 2. 3. 4. 5. //LeftDoubleClick、LeftDoubleClickS、LeftDoubleClickH] //LeftDoubleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和 USB 接 口的鼠标都可以使用 //LeftDoubleClickH: 硬件模拟方式,仅支持 PS(圆口)的鼠标 点击查看使用硬件模拟方式的注意事 项 LeftDoubleClick 5 //在当前鼠标的位置双击鼠标左键 5 次 脚本例子: (7.x 语法)复制代码 1. 2. 3. 4. 5. //LeftDoubleClick、LeftDoubleClickS、LeftDoubleClickH] //LeftDoubleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和 USB 接 口的鼠标都可以使用 //LeftDoubleClickH: 硬件模拟方式,仅支持 PS(圆口)的鼠标 点击查看使用硬件模拟方式的注意事 项 LeftDoubleClick 5 //在当前鼠标的位置双击鼠标左键 5 次命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)L o ckM o us e 锁 定 鼠 标 位 置锁定鼠标位置,用户将不能通过移动鼠标而改变鼠标位置,而脚本仍可以改变鼠标位置 无 无 复制代码 1. 2. 3. 4. 5. //在脚本开始的时候使用这个命令,可以有效防止用户误触鼠标引起脚本执行出错 LockMouse Do Delay 1000 Loop脚本例子: (7.x 语法)复制代码 1. 2. 3. 4. 5. //在脚本开始的时候使用这个命令,可以有效防止用户误触鼠标引起脚本执行出错 LockMouse While True Delay 1000 EndWhile命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)M i d d l e Cl i ck 中 键 单 击模拟点击鼠标中键 参数 1 整数型,次数 无 复制代码 1. 2. 3. 4. //MiddleClick、MiddleClickS、MiddleClickH //MiddleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和 USB 接口的鼠 标都可以使用 //MiddleClickH: 硬件模拟方式,仅支持 PS(圆口)的鼠标 点击查看使用硬件模拟方式的注意事项 MiddleClick 5 5.//在当前鼠标的位置单击鼠标中键 5 次脚本例子: (7.x 语法)复制代码 1. 2. 3. 4. 5. //MiddleClick、MiddleClickS、MiddleClickH //MiddleClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和 USB 接口的鼠 标都可以使用 //MiddleClickH: 硬件模拟方式,仅支持 PS(圆口)的鼠标 点击查看使用硬件模拟方式的注意事项 MiddleClick 5 //在当前鼠标的位置单击鼠标中键 5 次命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)M o us e Whe e l 鼠 标 滚 轮滚动鼠标滚轮 参数 1 整数型,滚动量 无 复制代码 1. 2. 3. 4. //如果滚动量为正,向上滚动;否则向下滚动. //仅支持 Windows 2000 以上的操作系统. MouseWheel 1 //把鼠标滚轮向上滚动 1 格脚本例子: (7.x 语法)复制代码 1. 2. 3. 4. //如果滚动量为正,向上滚动;否则向下滚动. //仅支持 Windows 2000 以上的操作系统. MouseWheel 1 //把鼠标滚轮向上滚动 1 格命令名称: 命令功能: 命令参数:M o ve R 鼠 标 相 对 移 动鼠标相对移动到 参数 1 整数型,X 距离 参数 2 整数型,Y 距离返 回 值: 脚本例子: (8.x 语法)无 复制代码 1. 2. 3. 4. //MoveR、MoveRS、MoveRH //MoveRS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和 USB 接口的鼠标都可 以使用 //MoveRH: 硬件模拟方式,仅支持 PS(圆口)的鼠标 点击查看使用硬件模拟方式的注意事项 //当前鼠标在(100,100)点,使用下面语句 5. 6. 7.MoveR 200,300 //之后,鼠标就被移到了(100+200,100+300)处,也就是坐标(300,400)处 //提示:使用硬件模拟方式不能碰键盘鼠标,否则会导致出错脚本例子: (7.x 语法)复制代码 1. 2. 3. 4. 5. 6. 7. //MoveR、MoveRS、MoveRH //MoveRS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和 USB 接口的鼠标都可 以使用 //MoveRH: 硬件模拟方式,仅支持 PS(圆口)的鼠标 点击查看使用硬件模拟方式的注意事项 //当前鼠标在(100,100)点,使用下面语句 MoveR 200,300 //之后,鼠标就被移到了(100+200,100+300)处,也就是坐标(300,400)处 //提示:使用硬件模拟方式不能碰键盘鼠标,否则会导致出错命令名称: 命令功能: 命令参数:M o ve To 鼠 标 移 动移动鼠标到 参数 1 整数型,X 坐标 参数 2 整数型,Y 坐标返 回 值: 脚本例子: (8.x 语法)无 复制代码 1. 2. 3. 4. 5. 6. 7. 8. 9. //MoveTo、MoveToS、MoveToH //MoveToS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和 USB 接口的鼠标都可 以使用 //MoveToH: 硬件模拟方式,仅支持 PS(圆口)的鼠标 MoveTo 100,200 //把鼠标移动到(100,200)这个点上 intX=50 intY=150 MoveTo intX,intY //把鼠标移动到(intX,intY)这个点上,需要 5.50 以上版本支持.脚本例子: (7.x 语法)复制代码 1. 2. 3. 4. 5. 6. //MoveTo、MoveToS、MoveToH //MoveToS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和 USB 接口的鼠标都可 以使用 //MoveToH: 硬件模拟方式,仅支持 PS(圆口)的鼠标 MoveTo 100,200 //把鼠标移动到(100,200)这个点上 intX=50 7. 8. 9.intY=150 MoveTo intX,intY //把鼠标移动到(intX,intY)这个点上,需要 5.50 以上版本支持.命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)R e s t o re M o us e Po s 恢 复 上 次 保 存 的 鼠 标 位 置保存当前鼠标位置 无 无 复制代码 1. SaveMousePos 2. 3. 4. 5. 6. 7. 8. 9. //保存当前鼠标位置 Delay 100 MoveTo 500,20 Delay 100 RestoreMousePos //将鼠标移动到上一次保存的鼠标位置 //保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位 置, //这样脚本执行后鼠标的位置就不会变化脚本例子: (7.x 语法)复制代码 1. SaveMousePos 2. 3. 4. 5. 6. 7. 8. 9. //保存当前鼠标位置 Delay 100 MoveTo 500,20 Delay 100 RestoreMousePos //将鼠标移动到上一次保存的鼠标位置 //保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位 置, 这样脚本执行后鼠标的位置就不会变化命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子:R i g ht Cl i ck 右 键 单 击模拟点击鼠标右键 参数 1 整数型,次数 无 复制代码 (8.x 语法)1. 2. 3. 4. 5.//RightClick、RightClickS、RightClickH //RightClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和 USB 接口的鼠 标都可以使用 //RightClickH: 硬件模拟方式,仅支持 PS(圆口)的鼠标 点击查看使用硬件模拟方式的注意事项 RightClick 5 //在当前鼠标的位置单击鼠标右键 5 次脚本例子: (7.x 语法)复制代码 1. 2. 3. 4. 5. //RightClick、RightClickS、RightClickH //RightClickS: 超级模拟方式,兼容性更强,对键盘和鼠标没有特别的要求,PS2(圆口)和 USB 接口的鼠 标都可以使用 //RightClickH: 硬件模拟方式,仅支持 PS(圆口)的鼠标 点击查看使用硬件模拟方式的注意事项 RightClick 5 //在当前鼠标的位置单击鼠标右键 5 次命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)S a ve M o us e Po s 保 存 当 前 鼠 标 所 在 位 置保存当前鼠标位置 无 无 复制代码 1. SaveMousePos 2. 3. 4. 5. 6. 7. 8. 9. //保存当前鼠标位置 Delay 100 MoveTo 500,20 Delay 100 RestoreMousePos //将鼠标移动到上一次保存的鼠标位置 //保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位 置, //这样脚本执行后鼠标的位置就不会变化脚本例子: (7.x 语法)复制代码 1. SaveMousePos 2. 3. 4. 5. 6. 7. //保存当前鼠标位置 Delay 100 MoveTo 500,20 Delay 100 RestoreMousePos //将鼠标移动到上一次保存的鼠标位置 8. 9.//保存/恢复鼠标位置常用于制作网络游戏练功脚本,脚本开始时保存鼠标位置,脚本结束时恢复鼠标位 置, 这样脚本执行后鼠标的位置就不会变化命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法) 脚本例子: (7.x 语法)U nl o ckM o us e 解 除 锁 定 鼠 标 位 置解除 LockMouse 命令对鼠标位置的锁定 无 无 复制代码 1. 复制代码 1. 2. //如果用户使用了 LockMouse 命令而没有使用 UnlockMouse 命令,按键精灵会在脚本结束时自动解除锁 定 UnlockMouse命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)W a i t Cl i ck 按 任 意 鼠 标 键 继 续脚本执行到这一句暂停,按下任意鼠标键之后继续 参数 1 整数型,可选:变量名 无 复制代码 1. last_click=WaitClick() 2. MessageBox &您按下了& & last_click脚本例子: (7.x 语法)复制代码 1. WaitClick last_click 2. MessageBox &您按下了& & last_click三、控制命令命令名称: 命令功能: 命令参数:Ca l l 调 用 过 程调用过程 参数 1 字符串型,过程名 返 回 值: 脚本例子: (8.x 语法)无 复制代码 1. 2. 3. 4. 5. 6. 7. Call 子程序(&我是子程序,被你调用了&) EndScript //支持中文名变量 Sub 子程序(啊) Msgbox 啊 End Sub //定义一个过程,可以在脚本中调用这个过程脚本例子: 复制代码 (7.x 语法)命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)Do 循 环条件循环 参数 1 条件型,循环条件 无 复制代码 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 例子 2: 11. i=0 12. Do Until i=0 13. Msgbox &为什么没有循环到我呢?& 14. Loop 15. Msgbox &循环结束& 16. //当循环条件成立的时候,离开循环体 17. 18. 19. 例子 3: 20. i=0 21. Do Until i=1 22. Msgbox &我停不下来啦!!快住手& 例子 1: //支持 Exit Do 命令退出循环 i=0 Do While i=0 Msgbox &我停不下来啦!!快住手& Loop //当循环条件成立的时候,反复执行循环体 23. Loop 24. //当循环条件不成立的时候,反复执行循环体 25. 26. 27. 例子 4: 28. n=0 29. Do While true 30. 31. 32. 33. 34. 35. Msgbox &我将循环 10 次停下来!!& If n&=10 Then //当循环条件成立的时候,离开循环体 Exit do End if n=n+136. Loop 37. Msgbox n & &次& 38. 39. 40. 例子 5: 41. i = 0 42. Do 43. MessageBox &ok& 44. Loop While i && 0 45. //条件放后面,前面的循环内容可以执行一次!脚本例子: (7.x 语法)复制代码 1. 无命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)Fo r 循 环循环一定次数 参数 1 整数型,循环次数 无 复制代码 1. 2. 3. 4. 5. 6. 7. 8. 9. 例子 2: //支持 Exit For 命令退出循环 例子 1: //支持 Exit For 命令退出循环 For i=0 To 9 Delay 100 Next //循环 10 次 10. For 10 11. Delay 100 12. Next 13. //循环 10 次 14. 15. 16. 例子 3: 17. //支持 Exit For 命令退出循环 18. For i=0 to 19 step 2 19. Delay 100 20. Next 21. //循环 10 次 22. 23. 例子 4: 24. //支持 Exit For 命令退出循环 25. For i=0 to 19 step 2 26. 27. 28. 29. 30. Next 31. //循环 5 次 Delay 100 If i&9 Then Exit For End If脚本例子: (7.x 语法)复制代码 1. For 10 2. 3. 4. Delay 100 EndFor //循环 10 次命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)Funct i o n 函 数函数 多类型,多参数 多类型 复制代码 1. 2. 3. 4. 5. 6. 7. //支持 Exit Function 命令退出函数过程 Msgbox 函数过程(&我是函数,被你调用了&) EndScript Function 函数过程(a) 函数过程=a End Function //定义一个函数过程,可以在脚本中调用这个函数 脚本例子: (7.x 语法)复制代码 1. 无命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)G o s ub 调 用 子 程 序调用过程 参数 1 字符串型,过程名 无 复制代码 1. 2. 3. 4. 5. 6. 7. //可带参数传递 Call 子程序(&我是子程序,被你调用了&) EndScript Sub 子程序(a) Msgbox a End Sub //定义一个过程,可以在脚本中调用这个过程脚本例子: (7.x 语法)复制代码 1. 2. 3. 4. 5. 6. Gosub 子程序 EndScript Sub 子程序 Msgbox &我是子程序,被你调用了& Return 子程序 //定义一个过程,可以在脚本中调用这个过程命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)Goto 跳 转 到 标 记跳转到 Rem 标记处 参数 1 字符串型,标号 无 复制代码 1. 2. 3. 4. 5. Goto 标记 Delay 100 Rem 标记 Msgbox &你直接跳到这里了!!,上面的延迟没有被执行!!& //跳转语句,可以跳转到 rem 标记过的标记处继续执行 脚本例子: (7.x 语法)复制代码 1. 2. 3. 4. 5. Goto 标记 Delay 100 Rem 标记 Msgbox &你直接跳到这里了!!,上面的延迟没有被执行!!& //跳转语句,可以跳转到 rem 标记过的标记处继续执行命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)If 如 果 . . 则判断表达式 参数 1 条件型,表达式 无 复制代码 1. 2. 3. 4. 5. 6. 7. 8. 9. 例子 2: i=1 例子 1: i=0 If i=0 Then Msgbox &条件判断符合被通过!!& End If //通过判断表达式的取值,来执行后面的动作或控制10. If i=0 Then 11. 13. 15. Msgbox &条件判断符合被通过!!& Msgbox &否则条件判断符合被通过!!& Msgbox &否则!!& 12. ElseIf i=1 Then 14. Else 16. End If 17. //通过判断表达式的取值,来执行后面的动作或控制脚本例子: (7.x 语法)复制代码 1. i=0 2. 3. 4. 5. If i=0 Msgbox &条件判断符合被通过!!& EndIf //通过判断表达式的取值,来执行后面的动作或控命令名称: 命令功能:If Co l o r 颜 色 判 断判断屏幕某点的颜色 命令参数:参数 1 整数型,屏幕 X 坐标 参数 2 整数型,屏幕 Y 坐标 参数 3 字符串型,颜色 16 进制值 参数 4 整数型,判断条件返 回 值: 脚本例子: (8.x 语法)无 复制代码 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 例子 2: 12. a=1:b=1 13. IfColor 650,118,&78F0E8&,2 Then 14. 16. MessageBox &a& MessageBox &b& 15. ElseIf b=a Then 17. End if 例子 1: //判断条件(0:等于 1:不等于 2:近似等于) IfColor 860,27,&e1b072&,0 Then Msgbox &颜色等于& Else Msgbox &颜色不等于& End If //判断坐标点(860,27)的颜色是否等于 e1b072脚本例子: (7.x 语法)复制代码 1. 2. 3. 4. 5. 6. 7. //判断条件(0:等于 1:不等于 2:近似等于) IfColor 860,27,e1b072,0 Msgbox &颜色等于& Else Msgbox &颜色不等于& EndIf //判断坐标点(860,27)的颜色是否等于 e1b072命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子:R e m 标 记 /注 释标记命令可当注释 参数 1 字符串型,文字 无 复制代码 (8.x 语法)1. 2. 3.//不支持数字开头的和符号作为标记名 //标记命令.即可当注释,也可以为 Goto 跳转指令作标记 Rem 脚本开始脚本例子: (7.x 语法)复制代码 1. 2. //标记命令.即可当注释,也可以为 Goto 跳转指令作标记 Rem 脚本开始命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)R e s t a rt S cr i p t 重 新 启 动 脚 本 运 行重新启动脚本运行 无 无 复制代码 1. For i=0 to 2 2. 3. 4. 5. Delay 1000 Call Plugin.Msg.ShowScrTXT(0, 0, , &屏幕内容填写& & i, &0000FF&) Next RestartScript //重新启动脚本运行脚本例子: (7.x 语法)复制代码 1. 无命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)S e l e ct 情 况 条 件 选 择根据情况选择条件判断 参数 1 条件型,情况 无 复制代码 1. 2. 3. 4. 5. 6. 7. 8. 9. //不支持判断语句 如:Case a&0 UserVar 变量=0 &输入(0~9)数字& //&&---------------------------------------------以下是选择条件结结构判断 Select Case 变量 Case 0 Msgbox &你输入的数字为:0& Case 1 Msgbox &你输入的数字为:1& Case 2 10. 12. 14. 16. 18. 20. 22. 24. 26.Msgbox &你输入的数字为:2& Msgbox &你输入的数字为:3& Msgbox &你输入的数字为:4& Msgbox &你输入的数字为:5& Msgbox &你输入的数字为:6& Msgbox &你输入的数字为:7& Msgbox &你输入的数字为:8& Msgbox &你输入的数字为:9& Msgbox &你输入的数字不正确,请输入(0~9)数字!&11. Case 3 13. Case 4 15. Case 5 17. Case 6 19. Case 7 21. Case 8 23. Case 9 25. Case Else 27. End Select脚本例子: (7.x 语法)复制代码 1. 无命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)S ub 子 程 序定义一个过程 参数 1 字符串型,过程名 无 复制代码 1. 2. 3. 4. 5. 6. 7. //支持 Exit Sub 命令退出子程序过程 Call 子程序() EndScript Sub 子程序() Msgbox &我是子程序,被你调用了& End Sub //定义一个过程,可以在脚本中调用这个过程脚本例子: (7.x 语法)复制代码 1. 2. 3. 4. Gosub 子程序 EndScript Sub 子程序 Msgbox &我是子程序,被你调用了& 5. 6.Return 子程序 //定义一个过程,可以在脚本中调用这个过程命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)W hi l e 如 果 .. 则 循 环条件循环 参数 1 条件型,循环条件 无 复制代码 1. i=0 2. 3. 4. 5. While i=0 Msgbox &我停不下来啦!!快住手& Wend //当循环条件成立的时候,反复执行循环体脚本例子: (7.x 语法)复制代码 1. i=0 2. 3. 4. 5. While i=0 Msgbox &我停不下来啦!!快住手& EndWhile //当循环条件成立的时候,反复执行循环体四、颜色/图像命令命令名称: 命令功能: 命令参数:Fi nd Ce nt e r Co l o r 中 心 找 色在屏幕区域从中心开始查找指定的颜色 参数 1 整数型,屏幕左上角 x 坐标 参数 2 整数型,屏幕左上角 y 坐标 参数 3 整数型,屏幕右下角 x 坐标 参数 4 整数型,屏幕右下角 y 坐标 参数 5 字符串型,16 进制颜色值 参数 6 整数型,返回 x 坐标 参数 7 整数型,返回 y 坐标 返 回 值: 脚本例子: (8.x 语法)无 复制代码 1. //FindCenterColor left,top,right,bottom,c,x,y 2. 3. 4. 5. 6. 7. 8. 9. //在区域内从中心到外围找颜色为 c 的点,把坐标保存在变量 x 和 y 中 //left,top,right,bottom 都是整数或者整数型变量,说明了区域的左,上,右,下界限 //颜色是类似于&0000FF&的字符串,如果不取变量,别忘了加双引号 //如果没有找到这个颜色,则 x 和 y 的值都被置为-1 FindCenterColor 0,0,800,600,&0000FF&,x,y If x&0 and y&0 Then MoveTo x,y End If10. //在区域(0,0,800,600)中找红色(&0000FF&)的点,如果找到,则把鼠标移动到这个点脚本例子: (7.x 语法)复制代码 1. //VBSCall FindCenterColor(left,top,right,bottom,c,x,y) 2. 3. 4. 5. 6. 7. 8. 9. //在区域内从中心到外围找颜色为 c 的点,把坐标保存在变量 x 和 y 中 //left,top,right,bottom 都是整数或者整数型变量,说明了区域的左,上,右,下界限 //颜色是类似于&0000FF&的字符串,如果不取变量,别忘了加双引号 //如果没有找到这个颜色,则 x 和 y 的值都被置为-1 VBSCall FindCenterColor(0,0,800,600,&0000FF&,x,y) If x&0 and y&0 MoveTo x,y EndIf10. //在区域(0,0,800,600)中找红色(&0000FF&)的点,如果找到,则把鼠标移动到这个点命令名称: 命令功能: 命令参数:Fi nd Co l o r 找 色在屏幕区域从左到右、从上到下的查找指定的颜色 参数 1 整数型,屏幕左上角 x 坐标 参数 2 整数型,屏幕左上角 y 坐标 参数 3 整数型,屏幕右下角 x 坐标 参数 4 整数型,屏幕右下角 y 坐标 参数 5 字符串型,16 进制颜色值 参数 6 整数型,返回 x 坐标 参数 7 整数型,返回 y 坐标返 回 值: 脚本例子: (8.x 语法)无 复制代码 1. //FindColor left,top,right,bottom,c,x,y 2. 3. 4. 5. 6. 7. 8. 9.//在区域内从左到右,从上到下找颜色为 c 的点,把坐标保存在变量 x 和 y 中 //left,top,right,bottom 都是整数或者整数型变量,说明了区域的左,上,右,下界限 //颜色是类似于&0000FF&的字符串,如果不取变量,别忘了加双引号 //如果没有找到这个颜色,则 x 和 y 的值都被置为-1 FindColor 0,0,800,600,&0000FF&,x,y If x&0 and y&0 Then MoveTo x,y End If10. //在区域(0,0,800,600)中找红色(&0000FF&)的点,如果找到,则把鼠标移动到这个点脚本例子: (7.x 语法)复制代码 1. //VBSCall FindColor(left,top,right,bottom,c,x,y) 2. 3. 4. 5. 6. 7. 8. 9. //在区域内从左到右,从上到下找颜色为 c 的点,把坐标保存在变量 x 和 y 中 //left,top,right,bottom 都是整数或者整数型变量,说明了区域的左,上,右,下界限 //颜色是类似于&0000FF&的字符串,如果不取变量,别忘了加双引号 //如果没有找到这个颜色,则 x 和 y 的值都被置为-1 VBSCall FindColor(0,0,800,600,&0000FF&,x,y) If x&0 and y&0 MoveTo x,y EndIf10. //在区域(0,0,800,600)中找红色(&0000FF&)的点,如果找到,则把鼠标移动到这个点命令名称: 命令功能: 命令参数:Fi nd Co l o r E x 模 糊 找 色在屏幕区域模糊查找指定的颜色 参数 1 整数型,屏幕左上角 x 坐标 参数 2 整数型,屏幕左上角 y 坐标 参数 3 整数型,屏幕右下角 x 坐标 参数 4 整数型,屏幕右下角 y 坐标 参数 5 字符串型,16 进制颜色值 参数 6 整数型,查找方式 参数 7 整数型,相似度 参数 8 整数型,返回 x 坐标 参数 9 整数型,返回 y 坐标返 回 值: 脚本例子: (8.x 语法)无 复制代码 1. //FindColorEx left,top,right,bottom,c,type,similar,x,y 2. 3. 4. //在区域内找颜色为 c 的点,把坐标保存在变量 x 和 y 中 //left,top,right,bottom 都是整数或者整数型变量,说明了区域的左,上,右,下界限 //颜色是类似于&0000FF&的字符串,如果不取变量,别忘了加双引号 5. 6. 7. 8. 9. 10.//type 表示查找方式。0 为从上往下,从左往右找;1 为从中心往外围找 //similar 为相似度,取 0.3 到 1 之间的小数。数值越大,对相似度要求越严格。推荐取 0.8 //如果没有找到这个颜色,则 x 和 y 的值都被置为-1 FindColorEx 0,0,800,600,&0000FF&,1,0.8,x,y If x&0 and y&0 Then MoveTo x,y11. End If 12. //在区域(0,0,800,600)中,从中间开始找接近红色(&0000FF&)的点,如果找到,则把鼠标移动到这个 点脚本例子: (7.x 语法)复制代码 1. //VBSCall FindColorEx(left,top,right,bottom,c,type,similar,x,y) 2. 3. 4. 5. 6. 7. 8. 9. 10. //在区域内找颜色为 c 的点,把坐标保存在变量 x 和 y 中 //left,top,right,bottom 都是整数或者整数型变量,说明了区域的左,上,右,下界限 //颜色是类似于&0000FF&的字符串,如果不取变量,别忘了加双引号 //type 表示查找方式。0 为从上往下,从左往右找;1 为从中心往外围找 //similar 为相似度,取 0.3 到 1 之间的小数。数值越大,对相似度要求越严格。推荐取 0.8 //如果没有找到这个颜色,则 x 和 y 的值都被置为-1 VBSCall FindColorEx(0,0,800,600,&0000FF&,1,0.8,x,y) If x&0 and y&0 MoveTo x,y11. EndIf 12. //在区域(0,0,800,600)中,从中间开始找接近红色(&0000FF&)的点,如果找到,则把鼠标移动到这个 点命令名称: 命令功能: 命令参数:Fi nd Pi c 找 图在屏幕区域查找指定相似度的图片 参数 1 整数型,屏幕左上角 x 坐标 参数 2 整数型,屏幕左上角 y 坐标 参数 3 整数型,屏幕右下角 x 坐标 参数 4 整数型,屏幕右下角 y 坐标 参数 5 字符串型,bmp 格式图片路径 参数 6 整数型,相似度 参数 7 整数型,返回 x 坐标 参数 8 整数型,返回 y 坐标返 回 值: 脚本例子:无 复制代码 1. //FindPic left,top,right,bottom,filename,similar,x,y (8.x 语法)2. 3. 4. 5. 6. 7. 8. 9.//在区域内从左到右,从上到下找文件名为 filename 的 bmp 文件,把找到的坐标保存在变量 x 和 y 中 //left,top,right,bottom 都是整数或者整数型变量,说明了区域的左,上,右,下界限 //filename 是一个 bmp 格式的图片,需要您自己抓取,最好是 24 位,把边缘都设为单一的颜色 //similar 为相似度,取 0.5 到 1 之间的小数。数值越大,对图片的相似度要求越严格,速度也越快。推荐 取 0.9 //如果没有找到图片,则 x 和 y 的值都被置为-1 //推荐使用周围颜色单一的图片 MessageBox &这个例子会启动一个 Windows 自带的扫雷程序,然后查找扫雷程序里的笑脸图形& RunApp &winmine.exe&10. //加入一点延时,让扫雷程序顺利启动 11. Delay 2000 12. FindPic 0,50,,&winmine.bmp&,0.9,intX,intY 13. If intX&0 and intY&0 Then 14. 15. 17. MoveTo intX,intY MessageBox &找到图形,鼠标已经移到图形上面& MessageBox &没找到!请确认扫雷程序已经打开,并且您用的是 WinXP 系统&16. Else 18. End If 19. //在区域(0,50,)中找与文件 winmine.bmp 中的图形比较接近的地方,如果找到,则把鼠标移 动到这个地方 20. //6.30 版之后,找图的文件路径可以直接引用附件中的图片,不需要释放,例子 21. MessageBox &下面把鼠标先移到 0,0 点,再用附件找图的方式继续查找笑脸& 22. FindPic 0,50,,&Attachment:\winmine.bmp&,0.9,intX,intY 23. If intX&0 and intY&0 Then 24. 25. 27. MoveTo intX,intY MessageBox &找到图形,鼠标已经移到图形上面& MessageBox &没找到!请确认扫雷程序已经打开,并且您用的是 WinXP 系统&26. Else 28. End If 29. MessageBox &脚本演示结束,最好的脚本永远是您自己制作的。 :-)& 30. EndScript脚本例子: (7.x 语法)复制代码 1. //VBSCall FindPic(left,top,right,bottom,filename,similar,x,y) 2. 3. 4. 5. 6. 7. 8. 9. //在区域内从左到右,从上到下找文件名为 filename 的 bmp 文件,把找到的坐标保存在变量 x 和 y 中 //left,top,right,bottom 都是整数或者整数型变量,说明了区域的左,上,右,下界限 //filename 是一个 bmp 格式的图片,需要您自己抓取,最好是 24 位,把边缘都设为单一的颜色 //similar 为相似度,取 0.5 到 1 之间的小数。数值越大,对图片的相似度要求越严格,速度也越快。推荐 取 0.9 //如果没有找到图片,则 x 和 y 的值都被置为-1 //推荐使用周围颜色单一的图片 MessageBox &这个例子会启动一个 Windows 自带的扫雷程序,然后查找扫雷程序里的笑脸图形& VBSCall RunApp(&winmine.exe&)10. //加入一点延时,让扫雷程序顺利启动 11. Delay 2000 12. VBSCall FindPic(0,50,,&winmine.bmp&,0.9,intX,intY) 13. If intX&0 and intY&0 14. 15. 17. MoveTo intX,intY MessageBox &找到图形,鼠标已经移到图形上面& MessageBox &没找到!请确认扫雷程序已经打开,并且您用的是 WinXP 系统&16. Else 18. EndIf 19. //在区域(0,50,)中找与文件 winmine.bmp 中的图形比较接近的地方,如果找到,则把鼠标移 动到这个地方 20. //6.30 版之后,找图的文件路径可以直接引用附件中的图片,不需要释放,例子 21. MessageBox &下面把鼠标先移到 0,0 点,再用附件找图的方式继续查找笑脸& 22. VBSCall FindPic(0,50,,&Attachment:\winmine.bmp&,0.9,intX,intY) 23. If intX&0 and intY&0 24. 25. 27. MoveTo intX,intY MessageBox &找到图形,鼠标已经移到图形上面& MessageBox &没找到!请确认扫雷程序已经打开,并且您用的是 WinXP 系统&26. Else 28. EndIf 29. MessageBox &脚本演示结束,最好的脚本永远是您自己制作的。 :-)& 30. EndScript命令名称: 命令功能: 命令参数:G e t Pi x e l Col o r 得 到 指 定 点 颜 色得到指定位置的点的颜色 参数 1 整数型,屏幕 X 坐标 参数 2 整数型,屏幕 Y 坐标返 回 值: 脚本例子: (8.x 语法)字符串型,得到的颜色 16 进制值 复制代码 1. GetCursorPos x,y 2. 3. 4. cr1=GetPixelColor(x,y) MessageBox cr1 //得到当前点的颜色,并弹出对话框显示出来脚本例子: (7.x 语法)复制代码 1. VBSCall GetCursorPos(x,y) 2. 3. 4. VBSCall color1=GetPixelColor(x,y) MessageBox color1 //得到当前点的颜色,并弹出对话框显示出来 五、其他命令命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)Delay 延 时脚本暂停执行一段时间 参数 1 整数型,延时时间 无 复制代码 1. 2. 3. 4. 5. 6. 7. //{延时}里面填写”毫秒”数 //1 秒=1000 毫秒, 1 分钟=60000 毫秒, 1 小时=3600000 毫秒 Delay 6000 //延迟 6 秒 x = 5000 Delay x //延时 x 秒,这里 x 是 5 秒脚本例子: (7.x 语法)复制代码 1. 2. 3. 4. 5. 6. 7. //{延时}里面填写”毫秒”数 //1 秒=1000 毫秒, 1 分钟=60000 毫秒, 1 小时=3600000 毫秒 Delay 6000 //延迟 6 秒 x = 5000 Delay x //延时 x 秒,这里 x 是 5 秒命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)Im p o r t 导 入 命 令导入一个 vbs 文件或者插件 dll 文件 参数 1 字符串型,vbs 文件或插件 dll 文件 无 复制代码 1. 2. 3. 4. //当文件被导入后,里面的函数可以直接被调用,不需要使用 VBSCall 或 Plugin 命令 //在 VBScript 块中需要调用 vbs 文件或者插件中的函数时,必须采用这种方式,不能再冠以 VBSCall 或 Plugin 关键字 Import &Memory.dll& //导入 Memory 插件命令 脚本例子: (7.x 语法)复制代码 1. 2. 3. 4. //当文件被导入后,里面的函数可以直接被调用,不需要使用 VBSCall 或 Plugin 命令 //在 VBScript 块中需要调用 vbs 文件或者插件中的函数时,必须采用这种方式,不能再冠以 VBSCall 或 Plugin 关键字 Import Memory.dll //导入 Memory 插件命令命令名称: 命令功能: 命令参数:Inp ut B o x 用 户 输 入 对 话 框在对话框中显示提示,等待用户输入文本或单击按钮,并返回文本框内容。 参数 1 字符串型,消息字符串 参数 2 字符串型[可选],标题 参数 3 字符串型[可选],提示框默认内容 参数 4 整数型[可选],对话框 X 坐标位置 参数 5 整数型[可选],对话框 Y 坐标位置返 回 值: 脚本例子: (8.x 语法)字符串型,返回文本框内容 复制代码 1. Dim Input 2. 3. 4. 5. 6. 7. 8. 9. //[可选]意思是,也可以不需要填参数 //如下: Dim Input Input = InputBox(&请输入名字:&) Input = InputBox(&请输入名字:&,&提示:&,&张三&,0,0) MsgBox &输入: & & Input10. MsgBox &输入: & & Input脚本例子: (7.x 语法)复制代码 1. Dim Input 2. 3. 4. 5. 6. 7. 8. 9. //[可选]意思是,也可以不需要填参数 //如下: Dim Input Input = InputBox(&请输入名字:&) Input = InputBox(&请输入名字:&,&提示:&,&张三&,0,0) MsgBox &输入: & & Input10. MsgBox &输入: & & Input 命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)LogStart 开 始 记 录 日 志记录日志 字符串型:文件名 无 复制代码 1. 2. 3. 4. 5. 6. 7. LogStart &C:\a.log& //记录日志 For i = 0 To 3 TracePrint &保存次数:& & i Call Plugin.Msg.ShowScrTXT(0, 0, , &屏幕内容填写:& & i, &0000FF&) Next LogStop //记录日志停止 TracePrint &这句不会输出到日志里!&脚本例子: (7.x 语法)复制代码 1. 无命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)LogStop 停 止 日 志 记 录停止日志记录 无 无 复制代码 1. 2. 3. 4. 5. 6. 7. LogStart &C:\a.log& //记录日志 For i = 0 To 3 TracePrint &保存次数:& & i Call Plugin.Msg.ShowScrTXT(0, 0, , &屏幕内容填写:& & i, &0000FF&) Next LogStop //记录日志停止 TracePrint &这句不会输出到日志里!&脚本例子: (7.x 语法)复制代码 1. 无命令名称:MessageBox 弹 出 对 话 框 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)弹出一个窗口 参数 1 字符串型,提示内容文字 无 复制代码 1. 2. 3. 4. MessageBox &弹出窗口& //提醒: 按键 VBS 语句中也提供了 MessageBox 命令,可以支持变量,因此 MessageBox 命令也可以直接 写成支持变量的方式 x = &提醒窗口& MessageBox x脚本例子: (7.x 语法)复制代码 1. 2. 3. 4. MessageBox &弹出窗口& //提醒: 按键 VBS 语句中也提供了 MessageBox 命令,可以支持变量,因此 MessageBox 命令也可以直接 写成支持变量的方式 x = &提醒窗口& MessageBox x命令名称: 命令功能: 命令参数:Put A t t a chm e nt 释 放 附 件把当前脚本包含的附件展开到指定的路径下 参数 1 字符串型,可选:路径 参数 2 字符串型,可选:要释放的文件返 回 值: 脚本例子: (8.x 语法)无 复制代码 1. 2. 3. 4. 5. 6. 7. //[路径]是指定的相对路径或者绝对路径。 //如果省略[路径]或者[路径]为 . ,则默认展开到按键精灵所在的文件夹中 //可以指定要释放的文件,允许使用通配符,如 *.bmp。如果不指定要释放的文件,则默认释放所有文件 PutAttachment &c:\&,&*.bmp& //将附件中所有后缀是 bmp 的文件释放到 c 盘 PutAttachment &.\plugin&,&*.dll& //将附件中所有后缀是 dll 的文件释放到当前文件夹的 plugin 目录下脚本例子: (7.x 语法)复制代码 1. 2. 3. 4. 5. //[路径]是指定的相对路径或者绝对路径。 //如果省略[路径]或者[路径]为 . ,则默认展开到按键精灵所在的文件夹中 //可以指定要释放的文件,允许使用通配符,如 *.bmp。如果不指定要释放的文件,则默认释放所有文件 PutAttachment c:\ *.bmp //将附件中所有后缀是 bmp 的文件释放到 c 盘 6. 7.PutAttachment .\plugin *.dll //将附件中所有后缀是 dll 的文件释放到当前文件夹的 plugin 目录下命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)R unA p p 运 行启动一个程序或者打开一个文件 参数 1 字符串型,要运行的程序或者文件 无 复制代码 1. 2. 3. //如果程序路径不是变量,别忘了加双引号 RunApp &notepad.exe& //启动 Windows 记事本程序脚本例子: (7.x 语法)复制代码 1. 2. 3. //如果程序路径不是变量,别忘了加双引号 VBSCall RunApp(&notepad.exe&) //启动 Windows 记事本程序命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)S a yS t r i ng 输 入 文 本在当前窗口输入文字 参数 1 字符串型,表达式 无 复制代码 1. 2. 3. SayString &你好啊& x = &我很好& SayString x脚本例子: (7.x 语法)复制代码 1. 2. 3. SayString &你好啊& x = &我很好& SayString x命令名称: 命令功能:S e t S i mM o d e 设 置 模 拟 方 式设置模拟方式 命令参数: 返 回 值: 脚本例子: (8.x 语法)参数 1 整数型,设置模拟方式 无 复制代码 1. 2. 3. 4. 5. 6. 7. 8. 9. //模拟方式(0 普通|1 硬件|2 超级) MessageBox &这个例子会演示 普通/硬件/超级 这三种模拟方式的效果,点击确定后 3 秒钟开始模拟,会 用普通模拟按 3 下 a,硬件模拟按 3 下 b,超级模拟按 3 下 c& Delay 3000 SetSimMode 0 KeyPress 65,3 MoveTo 0,0 Delay 1000 SetSimMode 1 KeyPress 66,310. MoveTo 100,100 11. Delay 1000 12. SetSimMode 2 13. KeyPress 67,3 14. MoveTo 200,200 15. MessageBox &演示结束&脚本例子: (7.x 语法)复制代码 1. 2. 3. 4. 5. 6. 7. 8. 9. //模拟方式(0 普通|1 硬件|2 超级) MessageBox &这个例子会演示 普通/硬件/超级 这三种模拟方式的效果,点击确定后 3 秒钟开始模拟,会 用普通模拟按 3 下 a,硬件模拟按 3 下 b,超级模拟按 3 下 c& Delay 3000 SetSimMode 0 KeyPress 65,3 MoveTo 0,0 Delay 1000 SetSimMode 1 KeyPress 66,310. MoveTo 100,100 11. Delay 1000 12. SetSimMode 2 13. KeyPress 67,3 14. MoveTo 200,200 15. MessageBox &演示结束& 16.命令名称: 命令功能:Tr a ce Pr i nt 调 试 输 出在调试窗口打印文字 命令参数: 返 回 值: 脚本例子: (8.x 语法)参数 1 字符串型,变量名 无 复制代码 1. x=100 2. 3. 4. //可用于输出变量的值 TracePrint x //在调试窗口输出变量 x 的值脚本例子: (7.x 语法)复制代码 1. 2. 3. //可用于输出变量的值 TracePrint x //在调试窗口输出变量 x 的值命令名称: 命令功能: 命令参数:U s e r Va r 用 户 定 义 变 量用于支持用户设置脚本参数 参数 1 字符串型,变量 参数 2 字符串型,默认值返 回 值: 脚本例子: (8.x 语法)字符串型,设置的值 复制代码 1. 2. 3. 4. 5. 6. 7. 8. 9. //标准型自定义变量 //格式: UserVar {变量}={默认值} {注释} //解释:这个命令主要用于用户自定义的设置功能 UserVar var1=30 &当 HP<多少%时,使用红药& UserVar var2=30 &当 MP<多少%时,使用蓝药& //当用户使用这个脚本的时候,可以对这 var1 和 var2 这两个变量的取值进行设置 //下拉型自定义变量 //格式: UserVar 变量=DropList{选项 0:值 0|选项 1:值 1|选项 2:值 2}=默认显示的选项编号 {注 释} //解释:这个命令预先设定多个变量值,用户可在基面通过下拉方式进行选择 &:0.3}=2 &自动补血设置& 11. //特别提醒:默认显示的选项编号从 0 开始 10. UserVar Var1=DropList{&低于 10%时补血&:0.1|&低于 20%时补血&:0.2|&低于 30%时补血脚本例子: (7.x 语法)复制代码 1. 2. 3. //标准型自定义变量 //格式: UserVar {变量}={默认值} {注释} //解释:这个命令主要用于用户自定义的设置功能 4. 5. 6. 7. 8. 9.UserVar var1=30 当 HP<多少%时,使用红药 UserVar var2=30 当 MP<多少%时,使用蓝药 //当用户使用这个脚本的时候,可以对这 var1 和 var2 这两个变量的取值进行设置 //下拉型自定义变量 //格式: UserVar 变量=DropList{选项 0:值 0|选项 1:值 1|选项 2:值 2}=默认显示的选项编号 {注 释} //解释:这个命令预先设定多个变量值,用户可在基面通过下拉方式进行选择 补血设置10. UserVar Var1=DropList{低于 10%时补血:0.1|低于 20%时补血:0.2|低于 30%时补血:0.3}=2 自动 11. //特别提醒:默认显示的选项编号从 0 开始命令名称: 命令功能: 命令参数: 返 回 值: 脚本例子: (8.x 语法)V B S B e g i n. . VB S End VB S 执 行 块构成一个 VBScript 块 无 无 复制代码 1. VBSBegin 2. 3. 4. 5. 6. 7. 8. 9. 11. 12. 13. 14. 15. VBSEnd 16. //下面是使用过程函数 17. name 10 18. Next VBSEnd //在 VBScript 块中可以使用任何 VBScript 语句(包括 VBScript 的条件判断、子程序调用等等),也可 以使用大多数的按键精灵命令。 例子 2: //定义过程必须放在脚本开头! '这是一个注释 Function name(list) msgbox list+1 End Function For i=0 to 5 Msgbox &我在循环运行 VBScript 块哦!!& '这是注释10. VBSBegin脚本例子: (7.x 语法)复制代码 1. VBSBegin 2. 3. For i=0 to 5 Msgbox &我在循环运行 VBScript 块哦!!& 4. 5. 6. 7. 8. 9. 11. 12. 13. 14. Next VBSEnd'这是注释//在 VBScript 块中可以使用任何 VBScript 语句(包括 VBScript 的条件判断、子程序调用等等),也可 以使用大多数的按键精灵命令。 例子 2: //定义过程必须放在脚本开头! '这是一个注释 Function name(list) msgbox list+1 End Function10. VBSBegin15. VBSEnd 16. //下面是使用过程函数 17. name 10 18.Windowns 扫雷游戏脚本实例:Rem Start LockMouse //查找扫雷窗口,句柄存为 hd Plugin hd=Window.Find(&扫雷&,&扫雷&) If hd=0 MessageBox &你应该没有打开扫雷游戏吧?& Else //获得窗口四个角的坐标 Plugin WRect=Window.GetWindowRect(hd) VBS Dim x(4) VBS i=1 While i&=4 VBS WL=Len(WRect) VBS LL=InStr(WRect,&|&) If LL&&0 VBS x(i)=left(WRect,LL-1) VBS WRect=right(WRect,Wl-LL) Else VBS x(i)=WRect EndIf VBS i=i+1 EndWhile VBS Dim hg,sg //计算横格数 VBS hg=int((x(3)-x(1)-20)/16) //计算竖格数 VBS sg=Int((x(4)-x(2)-100)/16) MoveTo x(3)+1,x(4)+1 LeftClick 1 Delay 10 Plugin Window.SendKeyPress(hd,88) Delay 10 Plugin Window.SendKeyPress(hd,89) Delay 10 Plugin Window.SendKeyPress(hd,90) Delay 10 Plugin Window.SendKeyPress(hd,90) Delay 10 Plugin Window.SendKeyPress(hd,89) Delay 10 Plugin Window.SendKeyPress(hd,16) Delay 10 Plugin Window.Active(hd) //雷区最左上角一格的坐标 VBS x0=x(1)+21:y0=x(2)+100 VBS i=0 //用鼠标扫描整个雷区 While i&sg VBS j=0 While j&hg MoveTo x0+j*16,y0+i*16 Delay 5 IfColor 0,0,ffffff,0 LeftClick 1 Else IfColor 0,0,0,0 Else KeyPress 116,1 Goto Start EndIf EndIf VBS j=j+1 EndWhile VBS i=i+1 EndWhile EndIf UnlockMouse EndScript按键插件《扫雷》系列一【读取内存】 内存读取插件,用于读取某窗体句柄所在进程内存。与按键精灵本身提供的“VBSCall ReadMemory()”功能几乎相 同。 不同点在于: 1、VBSCall ReadMemory()读取最前台窗口内存。Plugin Memory.Read()读取某窗体的内存。 2、Memory 插件,提供更多更丰富的功能。 在给出 Memory 插件例子之前,先说说 windows 如何管理进程内存的,知其然要知其所以然,避免概念上的错误 理解。 在说内存之前,我们要知道 windows 是多进程的操作系统,CPU 时间片根据进程优先级的不同在各个进程中切 换,从而实现了多进程的管理机制。要详细解释“进程-内存”的关系比较复杂,一两篇文章也说不清楚。这里我就简要 说明几个与本文有关联的系统知识。 绝大多数学过计算机编程的同学,应该都清楚,在编写程序的时候,根本就没有多进程的概念,也不会向这方面 想。但一到涉及到内存的时候就会犯迷糊,windows 这么多进程,到底应该读取哪个地方的内存呢?其实不是这样的, windows 只是模拟出多进程的环境,实际的运算都在 CPU 上完成,而一个 CPU 在一个时间只能处理一条指令,也就是 说,对于 cpu 而言,只是单进程操作(请允许我提到 CPU、指令这些与汇编有关系的内容,我想不到如何能把这个概 念简单的描述出来,这些是概念,看懂意思就没问题了) 。windows 模拟多进程的操作,大概是这样的:把进程 A 送到 CPU 中处理 20 微秒-&保存进程 A 环境-&进程 B 送到 CPU 中处理 20 微秒-&保存进程 B 环境……一直循环这个过程。 CPU 的速度很快,系统在多进程切换,我们基本上感觉不到。所以实现了“多进程”。 现在轮到内存了:_) 内存这里是个比较卡人的地方,当初我也卡在这里过,其实当初也是因为概念不明而已,我在这里详细说说。 windows 有一套自己的内存管理方案,每个进程都独享独立的 4G 虚拟地址空间(注意这里,是虚拟地址内存,非物理 内存,当初我就卡在这里了) 。这个 4G,在每个进程中都是真实存在的,但因为是虚拟内存(注意这里,这里所说的 虚拟内存和调节 windows 的虚拟内存不是一个东西) ,程序用到的内存部分,加载到物理内存,供给 cpu 读取,用不到 的,依然还是硬盘上的文件。所以实际的物理内存占用并不高。明白这个概念,之后的东西就好办了。我们在读取内 存的时候,读出来的都在虚拟里,windows 是不允许用户直接操作物理内存的(这里涉及到 ring0/3 环的问题,与本文 无关,略过,只要记住,我们不要考虑物理内存就可以了) 。举个例子,我们读取进程 A 中的 50000 地址,再读取进程 B 中的 50000 地址,读的地址,完全不同,因为他们放到两快虚拟内存中。至于它到底在物理内存中哪个位置,只有 windows 知道(其实对程序员来说,也没有必要知道) 。 我反复强调了“进程-内存”,是因为我当初卡在这里过,如果看到这里,你还是云里雾里,那么建议你回头再看一 遍。 讲完了概念,进入正题: 我们要做的,正是读取 windows 自带的经典游戏《扫雷》中的“雷”所在的位置,旨在用代码描述内存插件的使用 方法。我始终坚信,代码是最好的老师,比任何教程都强。所以我直接给出注释全面的代码,以供分析。 //********************************** //* 以下例子只支持 xp 操作系统中扫雷 * //********************************** // //hwnd 中保存扫雷游戏的窗体句柄 Dim hwnd //查找《扫雷》的窗体句柄 Plugin hwnd=Window.Find(&扫雷&,&扫雷&) If hwnd=0 MessageBox &扫雷游戏没有打开哟!& EndScript EndIf //x, y 中分别保存当前扫雷的长与宽的格子数量 Dim x, y Plugin x=Memory.Read32Bit(hwnd,&h1005334) Plugin y=Memory.Read32Bit(hwnd,&h1005338) //建个双重循环,循环所有格子,这里用 VBScript 的循环会很方便,所以加入 vbsbegin 块 Import Memory.dll VBSBegin Dim i, j, value, strview strview=&说明:@代表安全,*代表雷& & vbcrlf For i=0 to x-1 For j=0 to y-1 value=Memory.Read8Bit(hwnd,&h1005360+(j+i*32+1)) '注意:VBSBegin 中的注释是“'” '//8A=显示出的雷 '//8F=未显示出的雷 If value=&h8A& or value=&h8F& then strview=strview & & *& Else strview=strview & & @& End If Next strview=strview & vbcrlf Next MessageBox strview VBSEnd 相信大家都可以通过插件的函数名称判断函数的作用,以上代码很简单,我不做过多讲解了哈 下部分,轮到 windows 插件,我会详细讲解“窗体位置”的概念按键插件《扫雷》系列二【窗口位置】按照惯例,首先介绍下“窗口坐标系”、“窗口工作区”和“窗口客户区”的概念,最后给出自动扫雷脚本。 “窗口坐标系”是我自创的描述词,术语叫什么我还真不清楚。这个概念很容易理解,我们都知道桌面分辨率,分 辨率越高,显示的 桌面内容就越多。我们也知道,窗口是“摆放”在桌面上的,甚至可以超出桌面范围(比如随意把一个窗口拖到桌面之 外) 。而窗口坐标系就 是窗口摆放在桌面的位置。假设桌面是 1024× 768,那么桌面左上角坐标就是 0,0。桌面右下角坐标就是 1023× 767(因 为是从 0 开始) 。这样, 窗口所在桌面的坐标就是“窗口坐标系”了。 “窗体工作区”和“窗体客户区”,这两个词从字面上很难理解,微软的官方文档就是这么叫的。我用一张图来表示 工作区和客户区 有什么不同。 从上图可以看出,工作区包含了窗体的四条边框,上面的边框最宽,叫做标题栏,其他的边框只有窄窄的一条。 为什么要区分工作区 和客户区呢?大家会议下 XP 系统默认的标题栏高度和 98/2000 系统默认的标题栏高度就明白了。也就是说,我们编写 按键脚本的时候,直接从客 户区入手,这样就不用考虑标题栏高度和四条窗体边框的问题了。 下面的脚本例子,建议大家输出看看结果,对理解工作区和客户区有帮助: //************************** //*窗体工作区 与 窗体客户区* //************************** // //启动扫雷 VBSCall RunApp(&winmine.exe&) //等待扫雷启动完毕 Delay 500 dim hwnd Plugin hwnd=Window.Find(&扫雷&,&扫雷&) //移动扫雷窗口到 0,0 位置 Plugin Window.Move(hwnd,0,0) dim winrect, clirect //获得 windows 区域 Plugin winrect=Window.GetWindowRect(hwnd) //获得 client 区域 Plugin clirect=Window.GetClientRect(hwnd) MessageBox &窗体工作区:& & winrect & vbcrlf & &窗体客户区:& & clirect 明白了基本概念之后,下面给出扫雷脚本的鼠标控制例子: //********************************** //* 以下例子只支持 xp 操作系统中扫雷 * //********************************** // //hwnd 中保存扫雷游戏的窗体句柄 Dim hwnd //查找《扫雷》的窗体句柄 Plugin hwnd=Window.Find(&扫雷&,&扫雷&) If hwnd=0 MessageBox &扫雷游戏没有打开哟!& EndScript EndIf //获取扫雷窗口位置 dim cliectRect Plugin cliectRect=Window.GetClientRect(hwnd) //rx, ry 保存雷区左上角第一个雷的坐标 dim rx, ry //按“|”分割字符串 dim tmp tmp=split(cliectRect,&|&) //:是 VB 里的一种多行语句写成一行的用法,同样试用于按键脚本 rx=cint(tmp(0))+20 : ry=cint(tmp(1))+60 //x, y 中分别保存当前扫雷的长与宽的格子数量 Dim x, y Plugin x=Memory.Read32Bit(hwnd,&h1005334) Plugin y=Memory.Read32Bit(hwnd,&h1005338) //建个双重循环,循环所有格子,这里用 VB 的循环会很方便,所以加入 vbsbegin 块 Import Memory.dll VBSBegin Dim i, j, value For i=0 to x-1 For j=0 to y-1 value=Memory.Read8Bit(hwnd,&h1005360+(j+i*32+1)) '//F==非雷 If value&&&hF&then MoveTo rx+j*16,ry+i*16 Delay 100 RightClick 1 Delay 100 End If Next Next VBSEnd 如果上一章的内容弄懂了,这篇还是真容易理解的。 下章,准备说一下“消息循环”机制,和用消息控制扫雷按键插件《扫雷》系列二【窗口消息】新人总会在论坛里看到后台挂机,后台消息,到底消息是什么,为什么可以实现后台,是本章描述的重点。同样 最后会给出消息的扫 雷例子。 消息,在 windows 里占有至关重要的位置,可以说 windows 就是由消息驱动的。消息,顾名思义,就是通知、告 知某个窗体或某个控件 现在应该接到了什么命令。windows 的消息非常的多,有鼠标移动的,键盘按下弹起的,有窗口位置移动的,改变窗 体大小,最小化,最大化等 。可以说,所能看到的桌面窗体变化、鼠标键盘操控,最终体现在 windows 里的都是消息。 windows 掌管一个大的消息循环,为理解方面,我用一张草图描述这个流程: 由上图可知,消息最终发送到每个窗体,每个窗体接到这个消息命令后,怎么处理那都是各个窗体自己的活了。 但是前面的部分确是 由 windows 掌管的。 明确了以上的内容,大家应该知道为什么有些游戏用消息不好使,有些游戏游戏用消息好使了。如果游戏自己做 了某种判断,或者有 些反外挂的程序在运行(比如 NP) ,那么消息对其无效,可以简单理解,游戏对消息做了过滤(这么描述不准确,但 我们只要知道了这点,就 足够了,如想了解更多消息的内容,百度上有很多文章) 。所以,消息不是所有游戏都通用的。 接下来说另外一个概念,窗口的组成。我们可以看到一个窗口,并且拖拉,最小化它。但是这个窗口,不一定由 一个窗体组成。比如 IE 浏览器,IE 浏览器就好比一个房子,里面有很多房间,每个房间就是一个窗体,这些房间共同组成了房子。用过 VB 的朋友,应该很容易理解 。每拖的一个控件,都有独立的窗口句柄(句柄的概念在后面会讲到) ,只有 table 除外。只有游戏不同,一般的游戏, 通常只有一个窗体,因 为是 DX 成像,反到不需要这许多控件。什么是 DX 成像?就是用 DX 把要显示的画面,画到窗体上。 以上内容说的非常混乱,简单理解就是,普通应用程序有很多个窗口组成一个大的窗口。而游戏,一般只有一个 窗口。 这么多窗口,windows 怎么知道哪个是哪个呢?聪明的 windows 引入了“窗体句柄”的概念。一个窗口对应一个数 字,这个数字在文档 中就叫做句柄了。注意,没有一个句柄是相同的,好像门牌号一样,这样就可以顺利区分到底在给哪个窗口发送消息 了。还有一点也非常重要,这个句柄是 windows 随机分配的,有效期只在这个窗口销毁前。换句话说,窗口 A 只要存在,那么他的句柄就是固 定的,如果关闭、再启动窗 口 A,那么窗口 A 的句柄就会变化。假如连续启动了 3 个窗口 A,那么 3 个窗口 A 的句柄也不一样。 罗里八梭的说了这么多,也不知道大家是否有看明白。如果没看明白,就回头再看一遍,还看不明白,跟帖留言。 总结一下我前面所说的东西: 1、windows 掌管消息分发,发到窗口后,由窗口自行处理 2、一个窗口,可能由 1-N 个窗口组成 3、每个窗体句柄,标识一个窗体或控件 4、窗体句柄的生存周期,就是窗体的生存周期 5、同窗体每次启动,其句柄并不相同 我使用了 361 的后台消息插件,不多废话,直接上例子: //********************************** //* 以下例子只支持 xp 操作系统中扫雷 * //********************************** // //hwnd 中保存扫雷游戏的窗体句柄 Dim hwnd //查找《扫雷》的窗体句柄 Plugin hwnd=Window.Find(&扫雷&,&扫雷&) If hwnd=0 MessageBox &扫雷游戏没有打开哟!& EndScript EndIf //x, y 中分别保存当前扫雷的长与宽的格子数量 Dim x, y Plugin x=Memory.Read32Bit(hwnd,&h1005334) Plugin y=Memory.Read32Bit(hwnd,&h1005338) //建个双重循环,循环所有格子,这里用 VB 的循环会很方便,所以加入 vbsbegin 块 Import Memory.dll Import BGKM5.dll VBSBegin Dim i, j, value For i=0 to x-1 For j=0 to y-1 value=Memory.Read8Bit(hwnd,&h1005360+(j+i*32+1)) '//小于&h80 的,都不是雷 If value&&h80& then //这里的 20 和 60 大家体会一下,16 是雷格式的间距: ) BGKM5.LClick hwnd,20+j*16,60+i*16 Else BGKM5.RClick hwnd,20+j*16,60+i*16 End If Next Next VBSEnd 有没有发现代码居然比上一章的简单,没错,对消息来说,只需要知道给出这个控件偏移的 x,y 然后点击就可以 了。 最后说一下,扫雷只有一个窗口,而且带有游戏性,这也是为什么我拿扫雷做例子的原因: )网络游戏循环找图找坐标详细教程(供新手学习)拜读了 LZ 的贴以后深感 LZ 的无私奉献把这么核心的能发出来,我总结上贴把 LZ 的所发的精简写成源码发出来!图的部 分大家自己抓[General] Description=我的脚本 BeginHotkey=121 BeginHotkeyMod=0 PauseHotkey=0 PauseHotkeyMod=0 StopHotkey=123 StopHotkeyMod=0 RunOnce=1 EnableWindow= Enable=1 AutoRun=0 [Repeat] Type=0 Number=1 [Relative] SetupOCXFile= [Comment] Content=图片自己加好了[Script] VBS dim s(4),t, x1, y1 VBS s(0)=&0&:s(1)=&1&:s(2)=&2&:s(3)=&3&:s(4)=&k& VBS t=0 Rem 1 If t&4 Else VBSCall FindPic(0,0,650,502,&Attachment:\&&s(t)&&.bmp&,0.8,x1,y1) If x1&0 and y1&0 Else [url=file://\\MessageBox]\\MessageBox[/url] t VBS t=t+1 Goto 1 EndIf EndIf 《蜀门》辅助脚本源码//现在发一个目前很红的游戏《蜀门》辅助脚本源码,纯颜色版无封号危险,功能很简单,不过简单游上跟这个差不多 的也要 5 块一星期。 //使用时到按键精灵官方网下载个按键精灵安装,打开,新建个脚本,选源文件,把源码帖在里面就好了。在右边下方 有设置选项。 Delay 64 Plugin ckjb=Window.Foreground() Plugin ckbk=Window.GetWindowRect(ckjb) VBS ckbka=split(ckbk,&|&) bkx1=ckbka(0): bky1=ckbka(1): bkx2=ckbka(2): bky2=ckbka(3) Delay 64 VBS xxts=&脚本初始化,请稍后............................................................& Gosub 写信息 Delay 256 UserVar Hong=50 补血百分比 UserVar lan=50 补蓝百分比 UserVar DZ=DropList{打坐:0|吃药:1}=0 低血选项 UserVar ADZ=6 打坐按键(0--9) VBS ADZ=ADZ+48 UserVar HP=4 加血按键(0--9) VBS HP=HP+48 UserVar MP=5 加蓝按键(0--9) VBS MP=MP+48 UserVar JN=1 技能按键(0--9) VBS JN=JN+48 UserVar wpgq=20e72e 怪物光圈颜色(找物品用,光圈特征色) UserVar nzsz=DropList{随机选择:0|手动选择:1}=0 验证码处理方法 Delay 256 VBSCall FindColorEx(bkx1,bky1+32,bkx1+100,bky1+100,&0300df&,0,0.9,hprX,hprY) VBS hppx=Cint(hprx+hong*1.56): mppx=Cint(hprx+lan*1.56) Delay 256 Gosub HPMP Delay 64 Rem 开始主程序 Delay 100 VBSCall FindColorEx(hprX+280,hprY-4,hprX+283,hprY+4,&0300df&,0,0.8,intX,intY) Delay 16 If intX&0 VBS xxx=1 VBS xxts=&锁定怪物,开始攻击......................................................................................& Gosub 写信息 Delay 100 KeyPress JN,1 Delay 1000 Else Gosub 捡查验证 Delay 32 Gosub 找物 Delay 32 Gosub HPMP Delay 32 VBS xxx=0 KeyPress 9,1 Delay 128 EndIf Delay 64 Goto 开始主程序 Sub 打坐 Delay 1000 Rem g VBSCall FindColorEx(hprx+154,hpry,hprx+156,hpry+18,&0100df&,0,0.8,hpuX,hpuY) Delay 16 VBSCall FindColorEx(hprx+154,hpry,hprx+156,hpry+18,&e0.8,hptX,hptY) Delay 16 If hpuX&0 and hptx&0 Delay 200 Goto r Else Delay 800 Goto g EndIf EndIf Rem r Return 打坐 Sub 找物 VBS dim jwx(5), jwy(5) Delay 64 For 2 VBSCall FindColorEx(bkx1+100,bky1+100,bkx2-100,bky2-100,wpgq,0,0.6,WX,WY) Delay 64 EndFor If WX&0 VBS jwx(0)=0: jwy(0)=0: jwx(1)=30: jwy(1)=0: jwx(2)=-30: jwy(2)=5: jwx(3)=0: jwy(3)=30: jwx(4)=0: jwy(4)=-30 VBS cci=0 For 5 Delay 64 MoveTo jwx(cci)+WX,jwy(cci)+WY Delay 32 VBSCall vas=GetCursorShape(0) Delay 32 If vas= VBS xxts=&发现物品.....................................................................................& Gosub 写信息 Delay 64 RightDown 1 Delay 16 RightUp 1 Delay 64 Goto 捡 EndIf VBS cci=cci+1 EndFor EndIf Rem 捡 Delay 512 Plugin XY = Color.FindShape(bkx1+300,bky1+300,bkx2-200,bky2-200, &-5|0|0,-3|0|0,-1|0|0,1|0|0,3|0|0,5|0|0,7|0|0,9|0|0,11|0|0,13|0|0,15|0|0,17|0|0,19|0|0,21|0|1,23|0|0,25|0|0,27|0|0,29|0|0,31|0|1,33|0|1,3 5|0|1,37|0|0,39|0|0,41|0|0,43|0|0,-5|2|0,-3|2|0,-1|2|0,1|2|0,3|2|0,5|2|0,7|2|0,9|2|0,11|2|0,13|2|0,15|2|0,17|2|1,19|2|1,21|2|1,23|2|0,25|2 |1,27|2|1,29|2|0,31|2|0,33|2|0,35|2|1,37|2|1,39|2|0,41|2|0,43|2|0,-5|4|1,-3|4|0,-1|4|1,1|4|1,3|4|0,5|4|1,7|4|1,9|4|1,11|4|1,13|4|1,15|4|0, 17|4|0,19|4|0,21|4|1,23|4|1,25|4|1,27|4|1,29|4|1,31|4|0,33|4|0,35|4|1,37|4|1,39|4|0,41|4|0,43|4|0,-5|6|0,-3|6|0,-1|6|0,1|6|0,3|6|0,5|6|0, 7|6|0,9|6|1,11|6|1,13|6|0,15|6|0,17|6|1,19|6|1,21|6|1,23|6|0,25|6|1,27|6|1,29|6|0,31|6|0,33|6|0,35|6|1,37|6|1,39|6|1,41|6|0,43|6|0,-5|8| 0,-3|8|0,-1|8|0,1|8|0,3|8|0,5|8|0,7|8|0,9|8|0,11|8|0,13|8|0,15|8|1,17|8|1,19|8|0,21|8|1,23|8|0,25|8|0,27|8|0,17|10|0,19|10|1,21|10|1,23| 10|0,25|10|1,27|10|1,29|10|0,31|10|0,33|10|0,35|10|1,37|10|0,39|10|0,41|10|1,43|10|0&, 1) MyArray = Split(XY, &|&) OKX = Clng(MyArray(0)): OKY = Clng(MyArray(1)) Delay 64 If OKX&0 Delay 64 MoveTo OKX,OKY Delay 64 LeftClick 1 EndIf Delay 64 Return 找物 Sub HPMP VBSCall FindColorEx(hppx,hpry,hppx+1,hpry+8,&01006e&,0,0.7,hpcX,hpcY) If hpcX&0 Delay 128 Else If DZ=0 VBS xxts=&血太少,打坐吧..........................................................................................................& Gosub 写信息 Delay 512 KeyPress ADZ,1 Gosub 打坐 Else KeyPress HP,1 Delay 128 EndIf EndIf VBSCall FindColorEx(hppx,hpry+10,hppx+1,hpry+18,&6d.7,mpcX,mpcY) If mpcX&0 Delay 128 Else If DZ=0 VBS xxts=&蓝太少,打坐......................................................................................................& Gosub 写信息 Delay 512 KeyP}

我要回帖

更多关于 手机按键精灵自动退出 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信