易语言通过全局键盘钩子来实现游戏按键控制

KBDLLHOOKSTRUCT结构体

.版本 2
 
.数据类型 KBDLLHOOKSTRUCT
    .成员 vkCode, 整数型, , , 指定虚拟键值
    .成员 scanCode, 整数型, , , 指定键的硬件扫描码。
    .成员 flags, 整数型, , , 事件注入标志
    .成员 time, 整数型, , , 事件注入时间
    .成员 dwExtraInfo, 整数型, , , 额外的信息

安装键盘钩子

键盘钩子 = SetWindowsHookExA (13, &游戏实战, GetModuleHandleA (0), 0)

键盘钩子回调函数

.版本 2
.支持库 eAPI
 
.子程序 游戏实战, 整数型, , 键盘钩子回调函数
.参数 ncode, 整数型, , 0
.参数 wparam, 整数型, , 按键状态
.参数 lparam, 整数型, , 结构指针
.局部变量 按键信息, KBDLLHOOKSTRUCT
 
CopyMemory (按键信息, lparam, 28)
' 检测系统全局键盘的按下状态
.如果真 (ncode = 0)
    .判断开始 (wparam = 256)
        ' 只按下一个键就启动所有的技能键
        .判断开始 (按键信息.vkCode#A)
            模拟按键 (#E, #S, #D)
 
        .默认
 
        .判断结束
 
    .判断 (wparam = 257)
        ' 写键盘弹起的一些辅助代码和动作
 
    .默认
 
    .判断结束
.如果真结束
返回 (CallNextHookEx (键盘钩子, ncode, wparam, lparam))

卸载键盘钩子

UnhookWindowsHookEx (键盘钩子)

教程获取下载:


发布日期:

所属分类: 易语言 标签: