我使用API函数返回了一个指针,它其实是一个结构的地址:
Public Type CWPRETSTRUCT
lResult As Long
lParam As Long
wParam As Long
Message As Long
hwnd As Long
End Type
我用SetWindowsHookEX 将一个我的MYHOOK函数作为钩子挂在我的一个窗口上。Public Function MyHook(ByVal nCode As Long, ByVal wParam As Long, ByVal lParam As Long)
strlog = strlog & "nCode:" & Hex(nCode) & " wparam:" & Hex(wParam) & " lparam:" & Hex
End Function因为是想捕获所有的SENT消息,使用的是WH_CALLWNDPROC,所以参数中的lParam 实际上是一个CWPRETSTRUCT类型数据的地址。
我本来想写成:
Public Function MyHook(ByVal nCode As Long, ByVal wParam As Long, ByVal lParam As CWPRETSTRUCT) As Long但是VB函数中又不能使用自定义函数作为参数。
于是想在函数中想办法把lParam转化为CWPRETSTRUCT类型。
好像也没有好的解决办法。请大家帮帮我。谢谢了。
Public Type CWPRETSTRUCT
lResult As Long
lParam As Long
wParam As Long
Message As Long
hwnd As Long
End Type
我用SetWindowsHookEX 将一个我的MYHOOK函数作为钩子挂在我的一个窗口上。Public Function MyHook(ByVal nCode As Long, ByVal wParam As Long, ByVal lParam As Long)
strlog = strlog & "nCode:" & Hex(nCode) & " wparam:" & Hex(wParam) & " lparam:" & Hex
End Function因为是想捕获所有的SENT消息,使用的是WH_CALLWNDPROC,所以参数中的lParam 实际上是一个CWPRETSTRUCT类型数据的地址。
我本来想写成:
Public Function MyHook(ByVal nCode As Long, ByVal wParam As Long, ByVal lParam As CWPRETSTRUCT) As Long但是VB函数中又不能使用自定义函数作为参数。
于是想在函数中想办法把lParam转化为CWPRETSTRUCT类型。
好像也没有好的解决办法。请大家帮帮我。谢谢了。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货