vb Hook 钩子

来源:百度知道 编辑:UC知道 时间:2024/05/24 06:37:16
在网上看到代码为(因为代码较长,下面是一部分,全码在http://cache.baidu.com/c?m=9d78d513d99405f804abc73e4d01d7174e10d73f7a898d4068d4e216d1371b121871e3ca79754c10948522685be90f1efdf1456f2a457be0cb9b9f4aaaebc17379cf3034074ddb1e0f870eaebf1f6dd621e65beaaa1ee4b9f03392&p=882a915e97d001f534be9b7f5b&user=baidu

Public Type EVENTMSG
message As Long
paramL As Long
paramH As Long
time As Long
hwnd As Long
End Type
Public Function HookProc(ByVal iCode As Long, ByVal wParam As Long, _
ByVal lParam As Long) As Long
Dim Result As Long

recOK = 1
Result = 0

If iCode < 0 Then 'iCode小于0必须直接调用下一个消息钩子函数

看 EventArr.Message的值.转换为16进制的

512 对应 Private Const WM_MOUSEMOVE = &H200 鼠标移动

其它的你转换成16进制就知道啥意思了

'左键相关
Public Const WM_LBUTTONDOWN = &H201 '按下
Public Const WM_LBUTTONUP = &H202 '抬起
Public Const WM_LBUTTONDBLCLK = &H203 '双击
'右键
Public Const WM_RBUTTONDOWN = &H204
Public Const WM_RBUTTONUP = &H205
Public Const WM_RBUTTONDBLCLK = &H206
'中键
Public Const WM_MBUTTONDOWN = &H207
Public Const WM_MBUTTONUP = &H208
Public Const WM_MBUTTONDBLCLK = &H209
Public Const WM_MOUSEWHEEL = &H20A

EventArr.paramL=X坐标
EventArr.paramH=Y坐标