玩转键盘鼠标:模拟精灵2005快速入门(图) | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
http://www.sina.com.cn 2005年06月08日 09:12 新浪科技 | |||||||||||||
作者:一鹤 您是否经常执行一些重复的鼠标键盘操作? 您是否需要把鼠标键盘动作纪录下来,并且在需要的时候自动执行或者与他人分享呢?
您是否希望轻松制作各种聊天机器人?或者有个软件自动帮您玩游戏、挂机? 您是否希望鼠标键盘在指定的时刻自动运行? 一款新推出的超酷鼠标键盘模拟软件-模拟精灵2005、可通过录制编写模拟程序记忆您的鼠标键盘操作,从而替代您的双手。 下载模拟精灵2005:新浪下载中心 模拟精灵2005是新一代模拟软件拥有最先进的模拟引擎,采用一系列创新技术将模拟编程推向一个新的时代,模拟精灵2005将带给您轻松流畅的模拟编程体验. 键盘鼠标 - 模拟程序 “模拟程序”是模拟精灵专用术语,指使用APEML模拟精灵语制作的模拟鼠标键盘的程序.每一个APE文件包含一个“模拟程序”. 一个“模拟程序”可以有多个“模拟区块”或“脚本区块”. “脚本区块”使用模拟精灵专用的LAscript语言编写. “模拟区块”主要包含“模块锚点”与“模块事件”.主要在录制时自动生成. “模块事件”是一组鼠标键盘事件。 “模块锚点”是一组鼠标键盘事件发生的目标环境(进程、窗口、坐标等)的快照.也是模块的控制点 键盘鼠标 - 使用模拟软件 这个软件的使用非常简单,完全做到了傻瓜化,如果从来没有用过这一类的软件,可能觉得有点难. 其实,你可以把他当一个录音机用,最简单的动作只有两个 1.录制 2.回放.只不过他录的是鼠标键盘的动作,放的也是鼠标键盘的动作. 如果你要开始操作的话,只要用鼠标点"录制"按钮即可 ,最好是按录制热键(常用热键自动显示在按钮上了,默认是Ctrl + Shift + j). 然后你就可以做你想做的事了,点鼠键或者按键盘,模拟精灵都会记录下来,并且自动创建模块并添加到“模拟程序”.注意无需点击停止连续多次的按录制热键、每按一次建立一个模拟区块. 以后,你可以随时运行模拟程序,所有被记录的鼠标键盘动作都会自动运行。 您可能注意到,有些鼠标键盘模拟软件主界面是一个脚本列表,而模拟精灵并没有这个列表,为什么呢? 因为模拟精灵提供更方便的管理功能,每个模拟程序都是一个ape文件,所以你可以自已在硬盘上创建文件夹任意组织ape文件, 也可以为ape文件绑定热键.你可以把模拟精灵2005当成一个虚拟机,而ape文件就是一个个独立的程序,双击即可运行. 回放模拟程序的时候您可以任意调整回放速度,可快可慢。 您也可以选择回放模式,模拟精灵支持“软件模式”与“硬件模式”,有些游戏的输入响应是直接访问硬件的,这时候常见的模拟软件不起作用,如果你使用模拟精灵的“硬件模式”即可成功模拟鼠标键盘,最重要的是只需要一键即可切换. 另外,您也可以调整循环次数,如果循环次数为零的话那么模拟程序会一直循环直到你按下停止热键。 每个“模拟区块”都可以设置循环次数,而整个模拟程序也可以设置循环次数,可灵活运用. 字符集:这是设置自动发话的编码方式的,普通设为“AUTO”自动检测即可. 其他设置请参看精灵教程. 小技巧--在后台运行模拟精灵2005:常常看到有人讨论这个问题-结论都是不可能,实际上这是一个技巧,你可以安装Virtual PC 2004或其他虚拟PC软件,安装一个虚拟操作系统在上面运行模拟精灵即可.这样你可以一边运行模拟程序,一边做其他的事.. 模拟精灵2005 - 软件特色 模拟软件这么多,有什么理由要选用模拟精灵呢? 首先模拟精灵是官方承诺永久免费的软件,也是一款无需安装的绿色软件. 模拟精灵2005支持Windows98、Me、2000、XP、2003等操作系统,经测试在将来的Longhorn系统上运行良好. 1.直观的说,目前几乎没有一个按键模拟类的软件真正能做到完美流畅的录制与播放. 录制以后的结果可能因为桌面的变化在回放的时候鼠标乱飞无法控制,在自已的电脑上就这样,如果你做的程序放到别人的电脑上更是鼠标乱飞了,所以通常要反复的修改脚本,才可以用. 对比来说,模拟精灵真正实现了即录即放,因为采用了一系列的创新技术, 你录的程序不但在你的电脑上,就算是在别人的电脑上都可以完美回放,哪怕就是你把目标程序关了,他也能自动打开, 就好象hello world示例程序,你不需要做任何准备设定任何参数,任何电脑都可以完美的运行. 这个功能主要是通过ApeML的锚点所实现的,模拟精灵在你录制鼠标键盘动作时,会把他创建为一个“模拟区块”,然后在你按下第一个任意键的时候以当前鼠标所指向的坐标创建锚点快照。 每一个锚点记录了文件名、进程信息、窗口位置、鼠标键盘状态、甚至使用的输入法等等.... 所以模拟精灵在回放的时候能迅速恢复到原来的状态。 只要指定文件名,不论目标程序安装在硬盘的什么位置,模拟精灵都能快速的找到文件所在的位置,如果程序没有运行就会自动打开,如记事本,只要指定"notepad.exe"就可以自动打开,甚至指定文件名的一部份也可以,这样大大方便了模拟程序的应用. 2.从理论上来说,目前的按键模拟类脚本大多是自制的简单脚本或者调用系统的脚本引擎,不能支持完整的高级语言特性,也不能真正的适应模拟程序的运行机制, 而模拟精灵结合了最先进的标记语言与高级动态语言为一体,模拟精灵2005拥有高效率的语法引擎,先天清晰优美的语法.功能可以无限制扩展,完美支持所有高级语言特性,如变量、延时、循环、结合标记语言与动态语言的优点与一身,支持中文编程.用模拟精灵你可以写出任何可能的程序. 3.模拟精灵拥有最方便的语法编辑器. 在主界面切换到“源码编辑”,然后点“读取源码”,即可以编辑源代码了,编译完成以后点“生成模拟程序”即可。 模拟精灵的编辑器支持快速的语法高亮,快速的自动完成列表。而自动完成列表只在一些大型编程软件如VS.Net里才有,很多著名的编辑器都不能支持这个功能或者不完善或者速度奇慢,而模拟精灵使用了专用的高速语法解析引擎,速度是非常快的,而且模拟精灵的自动完成列表是放在一个文本文件里可以编辑的(见Fairy_Ape\Language\CHSsyntax.txt),基本上能自编辑的自动完成列表目前似乎还没有. 那么自动完成列表有什么用呢?你在写LAScript脚本的时候,请试试在编辑器中敲入 win. 在打下圆点的时候你可以看到弹出了win库的所有 成员函数列表,移动上下方向键可以选择成员函数,并且可以看到成员函数相关的提示说明.按Enter键输入,按Esc取消. 语法编辑器会自动检测你输入的每一个字符,只要发现有相关的代码或模板就会自动显示列表。 (在CHSsyntax.txt里面,提示说明前面加上@就是一个模板,添加模板非常方便,可将常用的代码制作成模板) 4.可编辑速度、延时、目标位置、可自动抓点、抓点、抓色块、抓图、可选精确查找、模糊查找,可设定多种查找参数. 5.ApeML自身能携带图片附件,抓图时无需附带外部图片,并自带图片编辑器,可手动或自动抓取屏幕并编辑裁剪图片,也可导入导出图片,可选三种抓屏方式,也可调用外部抓屏软件,适用性广功能强大. 6.自动监测纪录输入的中英文字符串、按钮标题、窗体标题,以下鼠标键盘操作并记录到ApeML,自动过滤 Ctrl + Alt + Del 7.支持分卷ape文件,模拟精灵可长时间监控电脑,当纪录的事件超过指定的容量时能自动创建分卷文件. 关于模拟精灵更多的特色功能,限于篇幅,请大家参考精灵教程. 模拟精灵2005 - 在线精灵库 打开精灵库看到的第一个程序就是hello world示例程序.点击"导入运行" ,看看这个最简单的几分钟录制出来的模拟程序能帮你干些什么吧,当然有兴趣,可以看一下"hello world"的源代码,你也就明白一大半了. ApeML使用中文编程,并且支持各个国家的语言,或以自已添加制作语言包,并且读取ape文件时能自动转换语言. 有兴趣你可以制作一套自已的ApeML(当然别人就看不懂了,语言包还应通过官方统一标准). 模拟精灵2005 - LAScript库函数 因为ApeML基本上是自动生成的而且是全中文,所以我们教程中都偏重介绍LAScript,实际上在模拟功能上ApeML更强大. ◇key键盘库. key.press() 是软件模拟函数,参数个数不限,使用非常灵话; 如按下一个A键,可写成: key.press("A") --注意键名必须大写,在输入键名的时候或按 Ctrl + k 呼出键名自动输入框. 按下一组键 key.press(1000,"A","B","C","D","E","F"); 第一个参数1000为每个按键中间的延时,后面的键名可以有任意多个. 如果第一个参数为0,即延时为堆就是组合键了,如: key.press(0,"CTRL","SHIFT","SPACE"); key.pressIO()的用法与key.press()完全一样,不过pressIO()是硬件模拟.使用以前要key.openIO()打开硬件端口,使用后要key.closeIO()关闭硬件端口. 当然,模拟键盘应用使用ApeML录制自动生成较好,不是特别需要不必用LAScript写,但是LAScript同样提供了方便易用的键盘库. ◇mouse鼠标库. mouse.move(x,y,bAbs); --移动鼠标 mouse.click(x,y,bAbs); --单击鼠标左键 mouse.clickDB(x,y,bAbs); --双击鼠标左键 mouse.clickRB(x,y,bAbs); --双击鼠标右键 mouse.clickMB(x,y,bAbs); --双击鼠标中键 以上函数用法都一样,x,y参数是坐标,bAbs指明是相对移动还是绝对移动. 如: mouse.move(-1,-1,false); -- 向上向左移动一个像素 mouse.move(1,1,false); -- 向下向右移动一个像素 mouse.move(100,100,true); -- 鼠标移动到屏幕上从左向右100像素,从上向下100像素的绝对位置 mouse.getPos()读取当前鼠标位置 示例:x,y = mouse.getPos();--注意LAScript可返回多个值. mouse.setPos()设置当前鼠标位置 例:mouse.setPos(100,100); mouse.setPos()返回布尔值,设置成功返回true. ◇win窗口操作库 win.find(class,title)查找窗体 例:win.find("Notepad","无标题 - 记事本"); win.fromPos(x,y)可查找指定坐档的窗体, 示例: x,y = mouse.getPos(); //读取当前鼠标所在坐标 hwnd = win.fromPos(x,y); //从指定的坐标读取窗体句柄 win.getParent(hwnd) 返回指定窗体的父窗体. win.getForeground() 返回桌面上最前面的窗体句柄 win.getTop(hwnd) 返回指定窗体的最顶层父窗体. win.close(hwnd); --关闭窗口 win.min(hwnd); --最小化窗口 win.max(hwnd); --最大化窗口 win.restore(hwnd); --恢复窗口大小 win.getRect(hwnd)返回窗体区块与坐标 win.setRect(hwnd,x,y,x2,y2) 设置窗体区块与坐标 win.getFocus(hwnd) 获取输入焦点控件句柄 win.sendString(hwnd,str) 发送字符串 其中参数 hwnd 指定窗体句柄. win.exec(strfile) 运行指定程序 win.fromFile(strfile) 通过应用程序文件名获得主窗体句柄 win.getScreen() 获取当前屏幕分辩率 win.messageBox(str,title)弹出对话框 win.messageBoxTest(str,title)询问对话框 win.inputBox(str,title)输入对话框 win.messagePrint(str)打印信息 win.consoleOpen()打开控制台窗口 win.consoleClose()关闭控制台窗口 win.doEvents()释放控制权 ◇mem内存操作库 (略) 请参考精灵教程 ◇color颜色库 (略) 请参考精灵教程 更多库函数请参考精灵教程 下载模拟精灵2005:新浪下载中心
|