能真正后台运行的按键精灵代码支持最小化和切换窗口_第1页
能真正后台运行的按键精灵代码支持最小化和切换窗口_第2页
能真正后台运行的按键精灵代码支持最小化和切换窗口_第3页
能真正后台运行的按键精灵代码支持最小化和切换窗口_第4页
能真正后台运行的按键精灵代码支持最小化和切换窗口_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、能真正后台运行的按键精灵代码支持最小化和切换窗口能真正后台运行的按键精灵代码是附 2 ,详细应用是附 3 均可直接复制使用主题:按键精灵 切换窗口 最小化 后台运行 游戏1 、游戏句柄 后台的意思就是当窗口被遮盖或移开的时候,仍能够正常的执行脚本动作,所以必须先找到该游戏的窗口 句柄,这样可以保证我们编辑的脚本语句有正确的使用方向,获取窗口句柄的方法有很多,我一般使用以下的方法:Dim hwndPlugin hwnd=Window.MousePoint()Plugin 是调用插件命令,凡是调用插件都需要使用这个命令, hwnd 就是得到的句柄, Window 是插件的名 称 MousePoin

2、t() 返回鼠标所在的窗口的句柄 关于窗口这里需要多说几句,以网页游戏为例,鼠标放在标题栏上和放在游戏窗口所得到的句柄是不一样 的,游戏窗口是 IE 的一个子窗口,因此在运行脚本前,将你的鼠标放在游戏窗口的区域内再运行脚本。 得到句柄费函数很多,有兴趣的自己去试试看,不过知道一个就足够了。2、模拟动作得到窗口句柄后,你就可以向这个窗口模拟需要的动作了,在这里要用到按键精灵 7 的插件(既然已经有7 了以前的插件就不作介绍了),模拟动作的函数有如下几个-模拟鼠标点击Plugin Bkgnd.LeftClick( 句柄 ,横坐标 ,纵坐标 ) /模拟鼠标左键点击Plugin Bkgnd.Right

3、Click( 句柄 ,横坐标 , 纵坐标 ) /模拟鼠标右键点击其中的句柄就是上面我们已经得到的句柄,这里的横坐标和纵坐标是针对游戏窗口,而不是针对屏幕的(看晕了吧关于这一点足足困扰了我一个礼拜的时间才弄明白 )。屏幕坐标,是以屏幕左上角为基点( 0,0),右下角的坐标是和屏幕分辨率有关的,而窗口坐标,不是在 屏幕的左上角,例如 word 中的编辑窗口的 0,0 位置是在工具栏下面的,看不懂也没关系,你只要记住下面的方法就行了,首先在得到窗 口句柄后加上如下的代码:Plugin s = Window.GetClientRect(hwnd)XYArray = Split(s, "|&q

4、uot;, -1, 1)dx = XYArray(0)dy = XYarray(1)其次,在横坐标和纵坐标的后面都分别减去 dx 和 dy 就行了,为什么!不用去管他,反正这样做不会错,举例说明例如你抓点得到的横坐标是X,纵坐标是y,那么模拟鼠标左键点击的语句应该是这样的:Plugin Bkgnd.LeftClick( 句柄 x-dx,y-dy)-模拟键盘动作Plugin Bkgnd.KeyPress( 句柄,按键码 ) /模拟键盘动作 这里的按键码可以很容易的在按键精灵中查到,包括组合键 -输入字符串Plugin Window.SendString(句柄,字符串 )这个函数在登陆和喊话时是非

5、常有用的,其中的字符串可以是字符串变量3 、后台找色后台脚本尽量少用找色语句,否则你的游戏将 “卡巴死机 ”,即使少用也会出现很多的 “马赛克 ”幸运的是不影 响找色功能,即使游戏图像已经乱七八糟,既然是要后台操作,难看就难看吧a_a。Plugin c1=BkgndColor.GetPiXelColor(hwnd,631-dX,121-dy) 强烈建议用这个函数,至于什么区域找色,区域照图之类,如果你的电脑速度足够快再去尝试吧。 找色是有技巧的,一定要找到一个不同画面分别对应不同颜色的点,当然只有一个点是不可靠的。我的思 路是,找到几个点的颜色值记录下来,再根据这几个点的不同组合来决定脚本的走

6、向,采取这种方法后,我在游戏时已经基本可以看到大 体的画面了。附1Delay 3000Hwnd = Plugin.Window.MousePoint()Rem aCall Plugin.Bkgnd.KeyPress(Hwnd, 50)Delay 5000Goto a附 2 :另一个(试了可行,可直接复制应用)SetSimMode 1UserVar yanshi=1000隔多久按一次下面这句是得到鼠标指向的窗口句柄Plugin Hwnd = Window.MousePoint()Rem sPlugin Bkgnd.KeyPress(Hwnd, 49)Delay yanshiPlugin Bkgn

7、d.KeyPress(Hwnd, 50)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd, 51)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd, 52)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd, 53)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd, 54)Delay yanshiGoto s附3,基于附2自己弄的一个后台运行代码,其中UserVar yanshi=200是后面用这句代码的地方"隔多久按一次",也可直接用时间代替此句无关紧要.Rem

8、s至Goto s期间的代码为找到窗口句柄后的要运行的代码,我们想要的鼠标按键 操作都在这期间内.Delay 300延时多少时间,好象是1秒=10000还是多少,在按键精灵里一看就晓得.For 3至EndFor期间为循环执行的命令,可以直接在控制命令里面插入,也可手下' (代码192 ),再依次按下1 (代码49), 2, 3,中间间隔时间为 yanshi (前面设定为 200 ,也可直接录入 200),按下空格键,循环三 遍后,再按下 8 ,然后按上面办法分别按下4,5,6 循环三遍后再按下 7,最后结束注意在设置的最右面设置循环次数为按中止键才中止, 以下代码直接复制后即可使用要按其

9、他的键盘参照改动即可可在记事本中看一下调试的具体结果(从SetSimMode 1 开始复制至结束)SetSimMode 1UserVar yanshi=200 隔多久按一次 /下面这句是得到鼠标指向的窗口句柄 Plugin Hwnd = Window.MousePoint()Rem sDelay 300For 3Plugin Bkgnd.KeyPress(Hwnd, 192)Plugin Bkgnd.KeyPress(Hwnd, 49)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd, 50)Delay yanshiPlugin Bkgnd.KeyPress(Hwn

10、d, 51)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd, 192)Plugin Bkgnd.KeyPress(Hwnd, 52)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd, 53)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd, 54)Delay yanshiEndForPlugin Bkgnd.KeyPress(Hwnd, 104)Delay 300For 3Plugin Bkgnd.KeyPress(Hwnd, 192)Plugin Bkgnd.KeyPress(Hwnd, 49)Delay

11、yanshiPlugin Bkgnd.KeyPress(Hwnd, 50)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd, 51)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd, 192)Plugin Bkgnd.KeyPress(Hwnd, 52)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd, 53)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd, 54)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd, 32)EndForPlugin Bkg

12、nd.KeyPress(Hwnd, 103)Goto s附四:补充一个练习,试了 N次均能正常运行的后台操作源代码.权当实验练习用.能后台运行的仙域钓鱼脚本自编源代码.说明:单击指点坐标,7秒后,按0 次,再按四次,在单击另一指定坐标,在弹出的对话框指定坐标处单击.再对另外三处不同的坐标点做相同操作SetSimMode 1模拟方式1为硬件模拟,2为越级模拟0为普通模拟Dim hwndUserVar yanshi=300/间隔时间 ,也可设置如红蓝低于某个数时自动运行动作Plugin Hwnd = Window.MousePoint()/上面这句是得到鼠标指向的窗口句柄Rem aaa/标记任意点

13、 aaa, 或者说起始点 ,到标记 goto 处结束/下面几句是得到目标点的相对坐标Plugin s = Window.GetClientRect(hwnd)XYArray = Split(s, "|", -1, 1)dx = XYArray(0)dy = XYarray(1)/上面四句代码得到目标坐标的相对坐标的dx 和 dy 值Plugin Bkgnd.LeftClick(hwnd,500-dx,300-dy)/在坐标 (500,300) 单击左键Delay 7000Plugin Bkgnd.KeyPress(Hwnd,96)/按一下 0 键Delay yanshiPl

14、ugin Bkgnd.KeyPress(Hwnd,219)/按一下 键Delay yanshiPlugin Bkgnd.KeyPress(Hwnd,219)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd,219)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd,219)Delay yanshiPlugin Bkgnd.LeftClick(hwnd,670-dx,170-dy)/在坐标 (670,170) 单击左键Delay yanshi/在坐标 (350,510) 单击左键Delay yanshiDelay 3000/上面是第一个号 ,

15、后面几个号同理操作 ,不再重复解说Plugin Bkgnd.LeftClick(hwnd,500-dx,400-dy)/在坐标 (500,400) 单击左键Delay 3000Plugin Bkgnd.KeyPress(Hwnd,96)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd,219)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd,219)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd,219)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd,219)Delay yans

16、hiPlugin Bkgnd.LeftClick(hwnd,670-dx,170-dy)Delay yanshiPlugin Bkgnd.LeftClick(hwnd,350-dx,510-dy)Delay yanshiDelay 3000/上面是第二个号Plugin Bkgnd.LeftClick(hwnd,500-dx,500-dy)/在坐标 (500,500) 单击左键Delay 3000Plugin Bkgnd.KeyPress(Hwnd,96)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd,219)Delay yanshiPlugin Bkgnd.Key

17、Press(Hwnd,219)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd,219)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd,219)Delay yanshiPlugin Bkgnd.LeftClick(hwnd,670-dx,170-dy)Delay yanshiPlugin Bkgnd.LeftClick(hwnd,350-dx,510-dy)Delay yanshiDelay 3000/上面是第三个号Plugin Bkgnd.LeftClick(hwnd,500-dx,600-dy)/在坐标 (500,600) 单击左键Delay 3000Plugin Bkgnd.KeyPress(Hwnd,96)Delay yanshiPlugin Bkgnd.KeyP

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论