易语言键盘钩子是什么写的鼠标钩子在游戏中无法使用

eLIB++EX支持库里的“***键盘钩子”、loveHebe支持库的“***全局键盘钩子”怎么使用在括号里写什么?我的目的是想随便做个按键连发程序没有例程,希望朋友们给我点提示謝谢!... eLIB++EX支持库里的“***键盘钩子”、love Hebe支持库的“***全局键盘钩子”怎么使用?在括号里写什么我的目的是想随便做个按键连发程序,没有例程希望朋友们给我点提示,谢谢!

易语言键盘钩子是什么哦不知道怎么弄呢。按键连发的话Windows有个API叫做keybd_event,你可以在键盘钩子嘚回调函数中多次模拟按键就是了这里有完整C++键盘钩子的源代码,实现改键的原理都差不多啦。

}完整的代码就去这里看吧:

GetModuleHandle()是获取一个应用程序或动态链接庫的模块句柄。不要想太多…
第二个是呼叫下一个钩子
5:返回坐标处的窗口句柄
然后新建一个自定义数据类型。等下用的

然后可以開始写代码了。。创建2个程序集变量用来保存键盘钩子和鼠标钩子的代号的 

。   然后创建2个回调函数鼠标钩子和键盘钩子的回调函数。返回值都是 整数型都有三个参数。 

接下来可以写_启动窗口_创建完毕()的代码了。
要创建2个钩子一个键盘钩子一个鼠标钩子。首先介绍一下创建钩子的命令

第一个参数是钩子类型。全局鼠标是14.键盘是13.第二个是子程序指针。也就是提供刚才我们创建的那两个函数嘚指针&是求指针符号。

然后开始弄回调函数。先弄键盘钩子的键盘钩子函数的第二个参数是状态。256按下257弹起。参数三是键值的指針注意。只是指针。我们要把它换成键值首先新建一个局部变量整数型的键值。然后需要这两个命令

首先是指针到字节集 (, )  第一个參数是指针。填 参数三  第二个填1。因为键值是一个整数在字节集里占1位。
然后取字节集数据  第一个参数就是 指针到字节集 (参数三,1 )    我们偠取整数型的键值所以第二个参数填3.第三个不填
OK这样键代码就被我们取出来了有了键值可以好好玩玩了

ok写完了代码。不过别忘记。这個函数可是有返回值的。返回什么呢这么写   

也就是呼叫下一个钩子。

ok键盘弄完。弄弄鼠标的同样。参数三里面有鼠标的坐标参數二是类型。我只记得512是鼠标移动513是左单击。具体你们可以调试输出一下参数二然后看看参数值就懂了。首先我们要把鼠标的坐标取箌吧
首先新建一个MOUSEHOOKSTRUCT类型的鼠标变量。。这回自定义数据类型用上了

。这样鼠标一移动就调试输出坐标
好啦。还是要 调用下一个钩孓

..然后还没完。。不卸载钩子…可不行

结束~好好玩玩吧…………

参考资料

 

随机推荐