急~~求解关于键盘钩子的问题

[复制链接]
查看11 | 回复2 | 2010-5-10 10:05:04 | 显示全部楼层 |阅读模式
1:
在模块中:
Public Function MyKBHFunc(ByVal iCode As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
If wParam = VK_LWIN Or wParam = VK_RWIN Then
MyKBHFunc = 1
End If
End Function
Private Sub Command1_Click()
If hook = 0 Then
hook = SetWindowsHookEx(WH_KEYBOARD, AddressOf MyKBHFunc, App.hInstance, 0)
End If
End Sub
1):为什么这个不能屏蔽WIN键(也就是CTRL和ALT中间的那个键)??
2):icode有什么用,HC_ACTION和HC_NOREMOVE应该怎么使用??
2:请问如果吃掉消息,是不是所有钩子只要CallNextHookEx不写就可以了???

回复

使用道具 举报

千问 | 2010-5-10 10:05:04 | 显示全部楼层
看样子你是想要做一个全局的钩子。那么你的钩子函数应该写在动态关联库(DLL)里面。否则除了你自己的程序,其他地方都没有用。不写CallNextHookEx确实消息就不会被转发,消息链到你那里就终止了。第二个问题我忘了,太久没写钩子了。建议你看一下MSDN写的很清楚。
回复

使用道具 举报

千问 | 2010-5-10 10:05:04 | 显示全部楼层
WIN键的屏蔽不是一般HOOK可能做到的,必须注入到WINLOG。EXE才能HOOK
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行