1. 首页 > 文章分类 > 生活百态

按键精灵后台脚本(按键精灵带界面脚本)

按键精灵如何设置后台运行

把下面的语句复制到按键精灵的源文件,保存后,先让需要后台运行的窗口置于当前窗口,然后运行下面的脚本,现在可以让那个窗口在后台了。 Plugin hwnd= Window.GetKeyFocusWnd() Delay 125 Rem开始 Plugin Window.SendKeypress(hwnd,88) Delay 200 Goto开始

请点击输入图片描述

WINDOWS每打开一个窗口(包含程序运行时的窗口),以及每个窗口内的控件(按扭,输入框等)都会随机分配一个号码,这个号码就是这一窗口或控件的句柄.获得这个句柄就雹纯可以实现在后台进行针对这个窗口(程序)的操作.例如:在这一窗口中输入一段文字,在某一座标进行单击,双击等.提取句柄的方法可以参考按键精灵的帮助.也可以全部命令--插件命令--Windows窗口插件找到.例如:Hwnd= Plugin.Window.Find(0,"无标题-记事本")'查找当前打开的程序中标题为"无标题-记事本"的窗口,并将找到的句柄号存进Hwnd变量中,以便后面调用;需要注意的是:任何一个窗口关闭后再打开,对应的句柄将会被重新分配.

请点击输入图片描述

步骤

第一步:进入编辑器

在主界面上点击“新建脚本”,然后选择“空白脚本”。[1]

第二步:插入脚本

按键精灵提供了非常简单的插入脚本方式,使用普通命令面板就可以完成整个插入脚本的过程。我们要制作的是鼠标连点器,所以要找的就是鼠标的命令。

点击在编辑器左边的【脚本】,然后点击【基本命令】,最后点击【鼠标命令】。这时鼠标的命令就展开了。我们可以看到界面上有鼠标动作的命令,默认的命令是【左键单击】,点击【下拉框】还可以看到其他的鼠标命令,例如【右键单击】、【左键双击】等等。我们就使用【左键点击】就可以了,循环按键次数我们先设置为“1次”,最后点击【插入】。

接着同样点击【脚本】,打开【基本命令】,最后点击【其他命令】。这时延时的命令就展开了。默认的延时单位是【秒】,点击【下拉框】还可以看到另外一个时间单位【毫秒】。我们就使用【毫秒】就可以了,时间我们先设置为“500”,最后点击【插入】。

第三步:修改描述

点击编辑器左侧的“脚本属性“打开基本设置界面。然后修改描述和文件名,建议大家将描述名和文件名取同一个名字。

第四步:设置热键

设置热键也是在基本设置选项卡进行设置。只要点击【热键】里面的【启动热键】,然后按下你想要设置的启动键和中止键,比如F10和F12。

第五步:设置脚本无限循环

点击编辑器左侧的【脚本属性】打开【基本设置】界面。在“运行“类目下选择【循环到按中止键为止】

第六步:皮哗保存脚本

到这里整个脚本已经制作完毕了,最后一步就是保存了。直接点击工具栏上的【保存退出】。退出后选择【我的脚本】,接着就可以在主界面看到这个脚本了,按下对应的启动热键就可以启动脚本了。

请点击输入图片描述

这就是按键精灵中的“伪后台”现象了。按键精灵的后台插件很粗糙,对于大多数游戏来说,并不能真正的支持后台。于是就出现了这样的,前台可以生效,但真正后台却无效的情况。这种情况,lz可以用神盾试试可否改善。但是别抱太大希望。同时lz最好结合大漠插件重新做源握咐一个脚本,大漠插件的后台还是不错的。希望对您有帮助。

请点击输入图片描述

按键精灵怎样设置后台按键

《按键精灵》怎样制作后台按键?相信不少用户对此不是特别了解,深空游戏小编就为大家带来按键精灵后台按键制作方法介绍,一起来看看吧!

按键介绍

1、游戏句柄

后台的意思就是当窗口被遮盖或移开的时候,仍能够正常的执行脚本动作,所以必须先找到该游戏的窗口句柄,这样可以保证我们编辑的脚本语句有正确的使用方向,获取窗口句柄的方法有很多,我一般使用以下的方法:

Dimhwnd

Pluginhwnd=Window.MousePoint()

Plugin是调用插件命令,凡是调用插件都需要使用这个命令,hwnd就是得到的句柄,Window是插件的名称MousePoint()返回鼠标所在的窗口的句柄

得到句柄费函数很多,有兴趣的胡卜自己去试试看,不过知道一个就足够了。

2、模拟动作

得到窗口句柄后,你就可以向这个窗口模拟需要的动作了,在这里要用到按键精灵7的插件(既然已中森经有7了以前的插件就不作介绍了),模拟动作的函数有如下几个

-模拟鼠标点击

PluginBkgnd.LeftClick(句柄,横坐标,纵坐标)//模拟鼠标左键点击

PluginBkgnd.RightClick(句柄,横坐标,纵坐标)//模拟鼠标右键点击

其中的句柄就是上面我们已经得到的句柄,这里的横坐标和纵坐标是针对游戏窗口,而不是针对屏幕的(看晕了吧^_^关于这一点足足困扰了我一个礼拜的时间才弄明白)。

屏幕坐标,是以屏幕左上角为基点(0,0),右下角的坐标是和屏幕分辨率有关的,而窗口坐标,不是在屏幕的左上角,例如word中的编辑窗口的0,0位置是在工具栏下面的,看不懂也没关系,你只要记住下面的方法就行了,首先在得到窗口句柄后加上如下的代码:

Plugins=Window.GetClientRect(hwnd)

XYArray=Split(s,,-1,1)

dx=XYArray(0)

dy=XYarray(1)

其次,在横坐标和纵坐标的后面都分别减去dx和dy就行了,为什么!!不用去管他,反正这样做不会错,举例说明

例如你抓点得到的横坐标是x,纵坐标是y,那么模拟鼠标左键点击的语句应该是这样的:

PluginBkgnd.LeftClick(句柄x-dx,y-dy)

-模拟键盘动作

PluginBkgnd.KeyPress(句柄,按键码)//模拟键盘动作

这里的按键码可以很容易的在按键精灵中查到,包括组合键

-输入字符串

PluginWindow.SendString(句柄,字符串)

这个函数在登陆和裤培穗喊话时是非常有用的,其中的字符串可以是字符串变量

按键精灵后台脚本(按键精灵带界面脚本)(图1)

3、后台找色

后台脚本尽量少用找色语句,否则你的游戏将“卡巴死机”,即使少用也会出现很多的“马赛克”幸运的是不影响找色功能,即使游戏图像已经乱七八糟,既然是要后台操作,难看就难看吧^_^。

Pluginc1=BkgndColor.GetPixelColor(hwnd,631-dx,121-dy)

强烈建议用这个函数,至于什么区域找色,区域照图之类,如果你的电脑速度足够快再去尝试吧。

找色是有技巧的,一定要找到一个不同画面分别对应不同颜色的点,当然只有一个点是不可靠的。我的思路是,找到几个点的颜色值记录下来,再根据这几个点的不同组合来决定脚本的走向,采取这种方法后,我在游戏时已经基本可以看到大体的画面了。

附一个网页游戏《明朝时代》61级刷铁矿的简单例子(我就用的这个脚本:)):

Dimhwnd

Pluginhwnd=Window.MousePoint()

Plugins=Window.GetClientRect(hwnd)

XYArray=Split(s,,-1,1)

dx=XYArray(0)

dy=XYarray(1)

vx=655-dx

vy=336-dy

vx1=638-dx

vy1=305-dy

For1000

Delay156

Delay16

PluginBkgnd.LeftClick(hwnd,vx,vy)

Delay7000

Delay500

PluginBkgnd.LeftClick(hwnd,vx1,vy1)

Delay1000

EndFor

Rem

按键精灵|

怎么用按键精灵后台操作

1、首先打开按键精灵,点击新建;

2、选择全部命令-插件命令-Window窗口插件-MousePoint,然后点击插入此命令是用来获得鼠标所指向位置的窗口句柄;

3、获取到窗口句柄之后我们就可以对目标窗口进行操作了,比如测兄带橡试向记事本中按下BAIDU这几个键;

4、选择插件命令-Bkgnd后台插件-keypress模拟按键(此命令是向目标窗口发送一个按键命令);在按键键代码的输入框中按下B键,自动给出数字66,然后点击插入,再依次输入A,I,D,U,继续插入;

5、看到右边的代码编辑界面中66,65,7368,85分别数B,A,I,D,U的键代码,也就是ASCII码;注意一下这边的Hwnd,Hwnd这个变量用来储存鼠标所指向窗口的句柄,下面的Keypress中第一个参数就是窗口句柄,所以第一个参数全部是Hwnd;

6、接下来按F5运行试试看,按键精灵中默认启动热键是F10,我们打开记事本,然后鼠标放在记事本中,按下F10看看效果,可以看到记事本中依次输入了baidu这几个字符;

7、如果要进行鼠标点击操作的话,在插件命令中,有提供多种鼠标操作命令,比较常用的是LeftClick进行鼠标左键单击,其需要的参数第一个为目标窗口句柄,第二个就是目标窗口中所在点的X坐标,第三个则是Y坐标,说一下,这里的坐标是相对于目标窗口来说的,而不是整个屏幕,以目标窗口最左上角为起点(0,0)开始计算,到目标窗口最右下角;

8、其操作方法跟按键输入差不多,都需要先获得窗口句柄,然后就是键代码变成了坐标位置;

9、另外说一下,可能有人会说,如果使用鼠标所在位置的句柄的话,这样鼠标就必须指向某一窗口,这样都不算是后台操作了,这里只是演示,可以在事先给出一个值,可以用按键抓抓工具来获得目标窗口句柄,然后将句柄复制下来,比如这里记事本中输入框的句柄为3343758;

那么就把原来的Hwnd= Plugin.Window.MousePoint()这句代码改成Hwnd= 3343758

预先给Hwnd赋值;

10、这样再运行后把记事本最小化,按下启动热键F10试试,然后再看看记事本,是不是多出了baidu这几个字符;

11、由于每次窗口打开羡旁后句柄都是不一样的,我们也可以用Find命令来获取一个标题或类名固定不变的窗口的句柄,比如这边默认的行凯就是获取记事本这个窗口的句柄,不管你记事本打开关闭几次,用这个命令总是可以获得正确的窗口句柄;

另外注意一下,这边获取的记事本句柄并不能进行输入操作,因为这边获取到的是记事本的句柄,而不是记事本中输入框的句柄,所以没办法对输入框进行操作,这个从按键抓抓中可以清楚的看到。

在按键精灵里录制了一个脚本,怎么能让它在游戏窗口内后台操作

录制的脚本想要后台操作需要大量工作量。

PluginHwnd=Window.GetKeyFocusWnd()

首先需要这个语句找到当前游戏窗口句柄

PluginWindow.SendKeyPress(Hwnd,??)

然后用这个语句执行后台键盘按键,鼠标左键按键的话是把SendKeyPress(Hwnd,??)

改成LeftClick(Hwnd,x,y)

键盘按键中的:??代表的意思是→键盘的按键码,输入相应的按键码才行

而鼠标按键中的x,y分别代表鼠标相对屏幕的x轴坐标和y轴的坐标以左上角为起点。也就是说和你学的数学的y轴参数负的变成了正的。其他同理

但你现在自己录制的脚本,也就是说在每个要按键的代码前面加上【PluginWindow.】←这个语句就是执行后台命令。那你说你录制的脚本有多长?你要找出多少个按键命令?我想你应该是不会按键精灵才会用录制去搞的吧?所以问题的关键在于就算你愿意花功夫也还不知道您键缺粗找不找的来。所以实话告诉你,要实现后台录制的可能几乎为0。如果你的确是需要后台按某几个键的话我可以帮你完成,太复杂的话我也没心稿镇情搞,这种没功扮扮劳的事情谁都不太想干。

OK,本文到此结束,希望对大家有所帮助。

本文来源于互联网,不代表趣虎号立场,转载联系作者并注明出处:https://quhuhao.com/wzfl/50578.html

联系我们

在线咨询:点击这里给我发消息

微信号:

工作日:9:30-18:30,节假日休息