永发信息网

关于LRESULT CALLBACK KeyboardProc的问题求教

答案:1  悬赏:70  手机版
解决时间 2021-03-17 11:37
关于LRESULT CALLBACK KeyboardProc的问题求教
最佳答案
KeyboardProc 键盘钩子处理函数: 首先键盘钩子处理函数的函数名是可以自定义的 ,例如:MyKeyboardProc() 函数原型: LRESULT CALLBACK KeyboardProc( int code, WPARAM wParam, LPARAM lParam ); 参数: code: 根据这个数值决定怎样处理消息 如果code 小于0,则 必须让KeyboardProc()函数返回CallNextHookEx() code可以是下列值: HC_ACTION:wParam和lParam包含按键消息 HC_NOREMOVE:wParam和lParam包含按键消息,并且按键消息不能从消息队列中移除(一个被PeekMessage函数调用的请求,指定 PM_NOREMOVE标志) wParam: 按键的虚拟键值消息,例如:VK_F1 lParam: 32位内存,内容描述包括:指定扩展键值,扫描码,上下文,重复次数。 0-15位: 描述:按下键盘次数。 16-23位 指定扫描码. 依赖于OEM 24位 当24位为1时候:表示按键是扩展键 当24位为0时候:表示按键是是数字键盘按键 25-28位 保留位 29位 上下文键:为1时: ALT按下,其他情况为0 30位 如果是按键按下后发送的消息,30位为1,如果是按键抬起后30位为1; 31位 指定转变状态:31位为0时候,按键正在被按下,为1时候,按键正在被释放 返回值: 如果参数1:code小于0,则必须 返回CallNextHookEx(),也就是返回CallNextHookEx()的返回值 如果参数1:code大于等于0,并且钩子处理函数没有处理消息,强烈建议您 返回CallNextHookEx()的返回值,否则当您安装WH_KEYBOARD钩子时 ,钩子将不会得到通知,并返回错误结果。 如果钩子处理的消息,您可以返回一个非0值,防止系统把消息传递给钩子链中的下一个钩子,或者把消息发送到目标窗口。 备注: 安装键盘钩子需要把WH_KEYBOARD作为SetWindowsHookEx()的第一个参数,并且把键盘钩子处理函数的函数指针作为SetWindowsHookEx()的第2 个参数. 需求: 头文件:Declared in Winuser.h, include Windows.h 导入库:无 最小系统需求:Windows 95, Windows NT 3.1 相关: Hooks Overview, CallNextHookEx, GetMessage, PeekMessage, SetWindowsHookEx, WM_KEYUP, WM_KEYDOWN 附赠例子: //屏蔽所有键盘输入 //DLL项目中代码 //DLL.cpp #include LRESULT CALLBACK KeyboardProc(int nCode,WPARAM wParam,LPARAM lParam) { return 1; } _declspec(dllexport) void SetHook() { SetWindowsHookEx(WH_KEYBOARD,KeyboardProc,::GetModuleHandle(TEXT("DLL.dll")),0); } 调用端代码: _declspec(dllimport) void SetHook(); SetHook();
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
办公室里有个男人总是喜欢背后乱对公司的其他
什么泵可以用于抽化工原料?并且方便从桶里面
3岁宝宝能吃生莲子吗
难忘那失望的眼神 范文
哪个播放器可以播放多种格式的,要支持AVI MP
一个长方体的长是25厘米宽是二十厘米高是十八
津有味NO.1这个地址在什么地方,我要处理点事
随机函数在120与80之间怎么设置
身高164cm体重99斤。穿衣服一般什么码
之前银行卡没注销,就是换号了,存里面的钱能取
我在欢乐斗地主赢了一箱银元宝,系统怎么就不
AMD型号: FX-8350 与FX-8350 哪个好
悄悄的进村 大声的不要,,, 是什么意思?
李白曾写过哪些诗,挑一首,写一写为什么喜欢这
测量管理体系和质量管理体系能否整合
推荐资讯
某速食面厂准备将生产的二千千克方便面捐给灾
华为cun-tl00支持otg吗
苹果手机充满了 不用拔掉也行吧 会不会对手机
如何证明一个人结没结婚过
梦见自己老婆是前世狐狸来报恩的
简历上包装了一个商城的支付系统面试会问什么
粒子滤波设置初始值时的初始方差怎么得到
写字楼和办公楼的区别
拉投资的人可以称呼
我想去桂林玩,那个高铁站近
子公司和中兴通讯除了没有公积金,还有什么区
主序星和超新星有什么区别呢?谢谢了,大神帮
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?