|
发表于 2019-4-17 20:38:44
|
显示全部楼层
本帖最后由 8545212154 于 2019-4-17 20:58 编辑
图色教程看蓝丝雨的就行了,虽然老了点但原理是一样的,不给任何人打广告,我蓝丝和梦飞飞的教程包括小甲鱼各类教程(汇编、C、C++、Python、Delphi)其它很多教程都看过,做脚本这块感觉蓝丝的比较全面,基本图色类脚本都包括了,中控也有,全局键鼠钩子教程没有,但是TC示例代码里面已经有了,看看就知道了,申请回调函数,调用SetWindowsHookExA系统钩子函数挂全局钩子,13为键钩子,14为鼠钩子,目前TC同类回调函数只能申请10个,代码如下:
功能 设置钩子()
//这里添加你要执行的代码
变量 hmod = 动态库调用("kernel32.dll", "long", "GetModuleHandleA", "long", 0)
调试输出(hmod)
h = 回调函数申请("键盘钩子", "hookproc")
hook = 动态库调用("user32.dll", "long", "SetWindowsHookExA", "long", 13, "callback", h, "long", hmod, "long", 0)//执行setwindowhook函数 挂起全局钩子,13全局键钩子
调试输出(获取错误信息(1))//这里获取dllcall执行后是否有错误信息
调试输出(hook)//输出钩子是否设置成功
结束
功能 键盘钩子(code, w, l)取值 = 地址取值(l, "long")
选择(w)
条件 256 //键盘按下
条件 257 //键盘弹起
条件 260 //系统键按下ALT
条件 261 //系统键弹起ALT
结束
动态库调用("user32.dll", "long", "CallNextHookEx", "long", hook, "long", code, "long", w, "long", l)//当code小于0的时候一定要把消息传递给他一个子程
返回 0//这里返回1即可拦截当前钩到的消息
结束
这样当挂起全局钩子后,在按键盘后,键盘消息将先被钩子函数钩到并反馈给回调函数申请的键盘钩子()函数中,再根据w参数取到按键类型是按下还是弹起,用地址取值取l参数的值,取到的值就是按键码,地址取值是放在在选择语句上一行另外,现在流行的单双头硬件盒子(类似U盘的一个盒子,实现硬件模拟键盘鼠标,跟真实鼠标键盘一样),我也在这说说,单头盒子单纯的实现硬件鼠标键盘,脚本和游戏不能分离开;双头盒子可实现脚本和游戏的分离,盒子有两个头,一头插主控机,一头插被控机,脚本在主控机上跑,游戏在被控机上跑,通过视频采集软件做媒介去实现图色的获取,盒子一般都有一个PID、UID的标识,先连接两台机器的盒子,然后脚本要操作键鼠的时候发送盒子相关的指令即可实现硬件控制被控机的操作
|
|