|
60精币
setwindowshookex 安装完钩子后,游戏窗口会有点卡,感觉是回调运行太慢了,有没有更效率点的方法。回调如下: |
CallWndProc | 整数型 | | |
nCode | 整数型 | | | | wParam | 整数型 | | | | lParam | 整数型 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | pArg | CWPSTRUCT | | | 字节集 | 字节集 | | | 字节集1 | 字节集 | | | 数据 | COPYDATASTRUCT_string | | | 文本 | 文本型 | | | 文本数组 | 文本型 | | 0 | 如果真 (nCode = #HC_ACTION )字节集 = 指针到字节集 (lParam, 1024 )pArg.hwnd = 取字节集数据 (字节集, #整数型, 13 )pArg.lParam = 取字节集数据 (字节集, #整数型, 1 )pArg.wParam = 取字节集数据 (字节集, #整数型, 5 )pArg.message = 取字节集数据 (字节集, #整数型, 9 )判断 (pArg.message = #按键 且 pArg.hwnd = 窗口句柄 ) 按键Call (pArg.lParam )判断 (pArg.message = #lUA 且 pArg.hwnd = 窗口句柄 ) LUACall (pArg.wParam, pArg.lParam )判断 (pArg.message = #采集 且 pArg.hwnd = 窗口句柄 ) 采集Call (pArg.lParam )判断 (pArg.message = #存仓 且 pArg.hwnd = 窗口句柄 ) 存仓Call (pArg.lParam )判断 (pArg.message = #丢弃 且 pArg.hwnd = 窗口句柄 ) 丢弃Call (pArg.lParam )判断 (pArg.message = #喊话 且 pArg.hwnd = 窗口句柄 ) 喊话Call (pArg.lParam )判断 (pArg.message = #捡物 且 pArg.hwnd = 窗口句柄 ) 捡物Call (pArg.lParam )判断 (pArg.message = #选怪 且 pArg.hwnd = 窗口句柄 ) 选怪Call (pArg.lParam )判断 (pArg.message = #对话NPC 且 pArg.hwnd = 窗口句柄 ) 对话Call (pArg.lParam )判断 (pArg.message = #打开摊位 且 pArg.hwnd = 窗口句柄 ) 打开摊位Call (pArg.lParam )判断 (pArg.message = #卖出物品 且 pArg.hwnd = 窗口句柄 ) 卖出物品Call (pArg.lParam )判断 (pArg.message = #二级对话NPC 且 pArg.hwnd = 窗口句柄 ) 二级对话Call (pArg.wParam, pArg.lParam )判断 (pArg.message = #卸载hook 且 pArg.hwnd = 窗口句柄 )卸载hook () 判断 (pArg.message = #WM_COPYDATA 且 pArg.hwnd = 窗口句柄 ) 判断 (pArg.wParam = #所有数据 )字节集1 = 指针到字节集 (pArg.lParam, 1024 )数据.dwData = 取字节集数据 (字节集1, #整数型, 1 )数据.cbData = 取字节集数据 (字节集1, #整数型, 5 )数据.lpData = 取字节集数据 (字节集1, #整数型, 9 )文本 = 到文本 (指针到字节集 (数据.lpData, 数据.cbData )) 文本数组 = 分割文本 (文本, “|”, )所有数据.Luacall = 到整数 (文本数组 [1 ])所有数据.选怪call = 到整数 (文本数组 [2 ])所有数据.捡物call = 到整数 (文本数组 [3 ])所有数据.采集call = 到整数 (文本数组 [4 ])所有数据.卖出call = 到整数 (文本数组 [5 ])所有数据.发包call = 到整数 (文本数组 [6 ])所有数据.按键call = 到整数 (文本数组 [7 ])所有数据.LuaEax值 = 到整数 (文本数组 [8 ])所有数据.发包ECX值 = 到整数 (文本数组 [9 ])所有数据.发包EAX值 = 到整数 (文本数组 [10 ])所有数据.寻路ECX值 = 到整数 (文本数组 [11 ])所有数据.丢弃EAX值 = 到整数 (文本数组 [12 ])所有数据.卖出EAX值 = 到整数 (文本数组 [13 ])所有数据.按键ecx值 = 到整数 (文本数组 [14 ])所有数据.存仓EAX值 = 到整数 (文本数组 [15 ])所有数据.对话npccall = 到整数 (文本数组 [16 ])所有数据.自动寻路call = 到整数 (文本数组 [17 ])所有数据.二级对话call = 到整数 (文本数组 [18 ])所有数据.打开摊位call = 到整数 (文本数组 [19 ])所有数据.二级对话ECX值 = 到整数 (文本数组 [20 ])判断 (pArg.wParam = #寻路 )字节集1 = 指针到字节集 (pArg.lParam, 1024 )数据.dwData = 取字节集数据 (字节集1, #整数型, 1 )数据.cbData = 取字节集数据 (字节集1, #整数型, 5 )数据.lpData = 取字节集数据 (字节集1, #整数型, 9 )文本 = 到文本 (指针到字节集 (数据.lpData, 数据.cbData )) 文本数组 = 分割文本 (文本, “|”, )寻路Call (到整数 (文本数组 [3 ]), 到整数 (文本数组 [2 ]), 到整数 (文本数组 [1 ])) 判断 (pArg.message = #放弃任务 且 pArg.hwnd = 窗口句柄 ) 放弃任务Call (pArg.lParam )返回 (CallNextHookEx (m_hook, nCode, wParam, lParam))
|
最佳答案
查看完整内容
这种问题随便瞅瞅也能看出来。。。。。
[e=2].版本 2
.子程序 CallWndProc, 整数型
.参数 nCode, 整数型
.参数 wParam, 整数型
.参数 lParam, 整数型
.局部变量 pArg, CWPSTRUCT
.局部变量 字节集, 字节集
.局部变量 字节集1, 字节集
.局部变量 数据, COPYDATASTRUCT_string
.局部变量 文本, 文本型
.局部变量 文本数组, 文本型, , "0"
.如果真 (nCode = #HC_ACTION)
字节集 = 指针到字节集 (lParam, 1024)
pArg.messa ...
|