❶ 按键精灵的脚本如何绑定游戏窗口
前台坐标是根据电脑屏幕分辨率计算,后台坐标是根据游戏窗口内计算,所以如果你直接转换后台,那么坐标移位。建议下载大漠综合工具轻松获得游戏窗口所需要的坐标
Hwnd = Plugin.Window.Foreground()
Call Plugin.Window.Move(Hwnd, 0, 0)
Delay 1000
//上述命令是对游戏窗口进行绑定
While 7=7
Plugin.Bkgnd.MoveTo(Hwnd, 1597, 415)
//鼠标移动到坐标1597,415
Delay 1000
//延时1秒(1000=1秒)
Plugin Bkgnd.LeftClick(Hwnd, 1597, 415)
//鼠标移动到坐标1597,415并且点击左键(如果你不是有延时1秒,其实可以直接使用这句即可)
Wend
//while---wend这个是循环体,可以在循环体内输入你需要的脚本,进行循环(因为绑定窗口不能循环操作,所以需要使用到循环体)
❷ MFC 在后台运行的程序中 模拟鼠标点击(不影响当前鼠标的操作!)
你想做的就是让h窗口响应你想要的鼠标事件吧?
如果h窗口是程序进程创建的,可以重载一下h的PreTranslateMessage看看消息是否被发送过来了,注意只截取你发送的消息。
如果h窗口是别的程序进程创建的,那就只能用工具看看h是否接收到消息了。
还有一个很猥琐的方法。。你可以让鼠标移动过去点击一下然后再回来。。。只是发送消息的话用户一般感觉不到的。。。
❸ 按键精灵绑定窗口后台鼠标点击
首先要获取指定窗口的窗口句柄,然后用后台插件绑定到指定窗口。这样你用插件命令写出来的脚本就可以后台运行了。但是大多不能最小化,只能遮挡。
这样可以么?
❹ 按键精灵 在前台模拟鼠标移动时会受到鼠标移动的干扰 有什么好办法让按键精灵模拟鼠标时 锁死鼠标
'可以使用大漠插件来绑定窗口,绑定成功后前台鼠标移动对后台无影响。
'以下为大漠插件注册代码
need_ver="3.1233"'大漠版本,3.1233是最后一个免费版本
PutAttachment"c: est","*.*"'释放文件,自己改路径
setws=createobject("Wscript.Shell")
ws.run"regsvr32c: estdm.dll/s"'自己改路径
setws=nothing
Delay1500
Setdm=createobject("dm.dmsoft")
dm.SetPath("c: est")'自己改路径
dm_ret=dm.SetPath("c: est")'自己改路径
dm_ret=dm.SetDict(0,"雷霆之怒.txt")'自己改字库名称
Hwnd=dm.GetMousePointWindow()'获取鼠标指向的窗口句柄
dm_ret=dm.BindWindow(Hwnd,"gdi","dx","dx",0)'绑定鼠标指向的窗口,绑定成功后鼠标不能对窗口进行操作,绑定模式需要根据实际情况改变
Delay1000
Ifdm_ret=1
Else
MessageBox"绑定失败,重启脚本或联系作者"&dm_ret
EndScript
EndIf
Delay2000
'以上为大漠插件的注册部分,字库按需要制作,不懂字库的可以去网上查找一下字库制作方法。
dm_ret=dm.FindStrFast(407,155,931,461,"回城复活","e3be64-000000",1.0,intX,intY)'这是大漠的后台找字命令,需要字库支持
IfintX>=0andintY>=0Then
dm.movetointX,intY'大漠鼠标移动命令,绑定窗口后可以实现后台鼠标移动。
dm.leftclick'大漠鼠标左键点击命令,可后台点击
endif
dm_ret=dm.FindPic(199,214,1425,832,"任务追踪.bmp","050505",0.9,0,intX,intY)
IfintX>=0andintY>=0Then'这是大漠的后台找图命令
dm.movetointX,intY'大漠鼠标移动命令,绑定窗口后可以实现后台鼠标移动。
dm.leftclick'大漠鼠标左键点击命令,可后台点击
endif
'以上代码复制到按键精灵就可以使用,另外已经上传大漠 插件3.1233版,还有大漠的综合工具,其他命令的使用方法可以根据大漠自带的接口说明文件来设置。
❺ 易语言,求一个可后台模拟鼠标点击的源码例子!
嗯,我若是在自己家电脑是能做到的,,只要窗口固定,可以通过移动鼠标位置和模拟点击来实现,但是到了其他电脑中坐标会改变,,,所以。。。
❻ 易语言,怎么对指定窗口模拟鼠标点击和按键,可以后台的
其实也不用这么难的。
用超级模块的命令就可以了。
你先把登录的按钮裁下来。
放在易语言里
然后用这个命令
这个坐标是一个变量。坐标型变量模块里有的
坐标 = 新识图.精确找图 (新识图.到可用图片 (#QQ图标), , , , , , )
如果 (坐标.x ≠ 0)
鼠标移动 (0, 坐标.x, 坐标.y)
鼠标键 (#单击左键, #按下_)
鼠标键 (#单击左键, #放开_)
这样自动点击的过程就完成了。
账号和密码只要找到句柄就可以了。也可以用上面的方法
把光标的焦点移到上面然后在模拟按键。到输入密码的时候再
模拟按下Tab键就ok了
❼ 按键精灵 大漠插件怎么样绑定游戏窗口代码基本格式
怎么绑定,大漠接口说明里说得清清楚。
学习任何东西都要自己多动手动脑,你才能记得住。
函数简介:
绑定指定的窗口,并指定这个窗口的屏幕颜色获取方式,鼠标仿真模式,键盘仿真模式,以及模式设定,高级用户可以参考BindWindowEx更加灵活强大.
函数原型:
long BindWindow(hwnd,display,mouse,keypad,mode)
参数定义:
hwnd: 指定的窗口句柄
display: 屏幕颜色获取方式 取值有以下几种
"normal" : 正常模式,平常我们用的前台截屏模式
"gdi" : gdi模式,用于窗口采用GDI方式刷新时. 此模式占用CPU较大.
"gdi2" : gdi2模式,此模式兼容性较强,但是速度比gdi模式要慢许多,如果gdi模式发现后台不刷新时,可以考虑用gdi2模式.
"dx2" : dx2模式,用于窗口采用dx模式刷新,如果dx方式会出现窗口所在进程崩溃的状况,可以考虑采用这种.采用这种方式要保证窗口有一部分在屏幕外.win7或者vista不需要移动也可后台.此模式占用CPU较大.
"dx3" : dx3模式,同dx2模式,但是如果发现有些窗口后台不刷新时,可以考虑用dx3模式,此模式比dx2模式慢许多. 此模式占用CPU较大.
"dx" : dx模式,等同于BindWindowEx中,display设置的"dx.graphic.2d|dx.graphic.3d",具体参考BindWindowEx
注意此模式需要管理员权限
mouse: 鼠标仿真模式 取值有以下几种
"normal" : 正常模式,平常我们用的前台鼠标模式
"windows": Windows模式,采取模拟windows消息方式 同按键自带后台插件.
"windows2": Windows2 模式,采取模拟windows消息方式(锁定鼠标位置) 此模式等同于BindWindowEx中的mouse为以下组合
"dx.mouse.position.lock.api|dx.mouse.position.lock.message|dx.mouse.state.message"
注意此模式需要管理员权限
"windows3": Windows3模式,采取模拟windows消息方式,可以支持有多个子窗口的窗口后台.
"dx": dx模式,采用模拟dx后台鼠标模式,这种方式会锁定鼠标输入.有些窗口在此模式下绑定时,需要先激活窗口再绑定(或者绑定以后激活),否则可能会出现绑定后鼠标无效的情况.此模式等同于BindWindowEx中的mouse为以下组合
"dx.public.active.api|dx.public.active.message|dx.mouse.position.lock.api|dx.mouse.position.lock.message|dx.mouse.state.api|dx.mouse.state.message|dx.mouse.api|dx.mouse.focus.input.api|dx.mouse.focus.input.message|dx.mouse.clip.lock.api|dx.mouse.input.lock.api|dx.mouse.cursor"
注意此模式需要管理员权限
"dx2":dx2模式,这种方式类似于dx模式,但是不会锁定外部鼠标输入.
有些窗口在此模式下绑定时,需要先激活窗口再绑定(或者绑定以后激活),否则可能会出现绑定后鼠标无效的情况. 此模式等同于BindWindowEx中的mouse为以下组合
"dx.public.active.api|dx.public.active.message|dx.mouse.position.lock.api|dx.mouse.state.api|dx.mouse.api|dx.mouse.focus.input.api|dx.mouse.focus.input.message|dx.mouse.clip.lock.api|dx.mouse.input.lock.api| dx.mouse.cursor"
注意此模式需要管理员权限
keypad: 键盘仿真模式 取值有以下几种
"normal" : 正常模式,平常我们用的前台键盘模式
"windows": Windows模式,采取模拟windows消息方式 同按键的后台插件.
"dx": dx模式,采用模拟dx后台键盘模式。有些窗口在此模式下绑定时,需要先激活窗口再绑定(或者绑定以后激活),否则可能会出现绑定后键盘无效的情况. 此模式等同于BindWindowEx中的keypad为以下组合
"dx.public.active.api|dx.public.active.message| dx.keypad.state.api|dx.keypad.api|dx.keypad.input.lock.api"
注意此模式需要管理员权限
mode : 模式。 取值有以下两种
0 : 推荐模式,此模式比较通用,而且后台效果是最好的.
1 : 和模式0效果一样,如果模式0会失败时,可以尝试此模式,此模式仅支持按键和简单游平台,小精灵等一律不支持.
2 : 同模式0,此模式为老的模式0,尽量不要用此模式,除非有兼容性问题.
3 : 同模式1,此模式为老的模式1,尽量不要用此模式,除非有兼容性问题.
4 : 同模式0,如果模式0有崩溃问题,可以尝试此模式.
5 : 同模式1, 如果模式0有崩溃问题,可以尝试此模式.
返回值:
0: 失败
1: 成功
示例:
// display: 前台 鼠标:前台键盘:前台 模式0
dm_ret = dm.BindWindow(hwnd,"normal","normal","normal",0)
// display: gdi 鼠标:前台 键盘:前台模式1
dm_ret = dm.BindWindow(hwnd,"gdi","normal","normal",1)
// display: dx 鼠标:前台 键盘:前台模式0
dm_ret = dm.BindWindow(hwnd,"dx","normal","normal",0)
// display: dx 鼠标:windows后台 键盘:windows后台 模式1
dm_ret = dm.BindWindow(hwnd,"dx","windows","windows",1)
// display: dx 鼠标:dx 后台 键盘: dx后台 模式1
dm_ret = dm.BindWindow(hwnd,"dx","dx","dx",1)
// display: dx 鼠标:windows3后台 键盘:windows后台 模式1
dm_ret = dm.BindWindow(hwnd,"dx","windows3","windows",1)
注意:
绑定之后,所有的坐标都相对于窗口的客户区坐标(不包含窗口边框)
另外,绑定窗口后,必须加以下代码,以保证所有资源正常释放
这个函数的意思是在脚本结束时,会调用这个函数。需要注意的是,目前的按键版本对于这个函数的执行不是线程级别的,也就是说,这个函数只会在主线程执行,子线程绑定的大漠对象,不保证完全释放。
Sub OnScriptExit()
dm_ret = dm.UnBindWindow()
End Sub
另外 绑定dx会比较耗时间,请不要频繁调用此函数.
另外如果绑定的是dx,要注意不可连续操作dx,中间至少加个10MS的延时,否则可能会导致操作失败.比如绑定图色DX,那么不要连续取色等,键鼠也是一样.
注意,图色dx,鼠标windows2 dx dx2以及键盘dx都需要管理员权限才能运行,所以对于WIN7和VISTA用户,在启动目标窗口时,必须用管理员方式启动,否则无法绑定成功!
还有一点特别要注意的是,有些窗口绑定之后必须加一定的延时,否则后台也无效.一般1秒到2秒的延时就足够.
发现绑定失败的几种可能(一般是需要管理员权限的模式才有可能会失败)
1. 系统登录的帐号必须有Administrators权限
2. 如果是vista和win7系统,启动窗口进程必须用管理员模式启动,脚本也必须用管理员模式启动.
3. 一些防火墙会防止插件注入窗口所在进程,比如360防火墙等,必须把dm.dll设置为信任.
4. 还有一个比较弱智的可能性,那就是插件没有注册到系统中,这时CreateObject压根就是失败的. 检测对象是否创建成功很简单,如下代码
set dm = createobject("dm.dmsoft")
ver = dm.Ver()
If len(ver) = 0 Then
MessageBox "创建对象失败,检查系统是否禁用了vbs脚本权限"
EndScript
End If
❽ 易语言后台模拟鼠标点击,指定本窗口下的某个坐标点击
鼠标消息(,,,,)