键盘钩子用键盘钩子 和 用PreTranslateMessage 两种方法捕获键盘不同按键时的响应,有何不同之处?

键盘钩子  时间:2022-02-23  阅读:()

用键盘钩子 和 用PreTranslateMessage 两种方法捕获键盘不同按键时的响应,有何不同之处?

钩键盘按键消息 键盘钩子的话用SetWindowHoolEx,第一个为钩子类型,键盘的话就是WH_KEYBOARD_LL,流程的话就是安装钩子,设置钩子消息处理回调函数,然后在回调函数中处理消息。不难的。 /************************************************ *@函数名: MyTaskKeyHookLL *@函数功能: 键盘钩子回调函数 *@函数参数: nCode, wp, lp *@入参: * nCode:钩子代号 * wp:消息,如,按键按下消息,按键弹起消息等 * lp:消息事件的具体结构指针 *@出参: * *@返回值: * *@备注: **************************************************/ LRESULT CALLBACK MyTaskKeyHookLL(int nCode, WPARAM wp, LPARAM lp) { return 1; // KBDLLHOOKSTRUCT *pkh = (KBDLLHOOKSTRUCT *) lp; // // if (nCode==HC_ACTION) // { // BOOL bCtrlKeyDown =GetAsyncKeyState(VK_CONTROL)>>((sizeof(SHORT) * 8) - 1); // BOOL bShift =GetAsyncKeyState(VK_LSHIFT)>>((sizeof(SHORT) * 8) - 1); // BOOL bAlt = GetAsyncKeyState(VK_LMENU)>>((sizeof(SHORT) * 8) - 1); // BOOL bEsc = pkh->vkCode==VK_ESCAPE?TRUE:FALSE; // BOOL bWin = GetAsyncKeyState(VK_LWIN)>>((sizeof(SHORT) * 8) - 1); // } // return CallNextHookEx(g_hHookKbdLL, nCode, wp, lp); } /************************************************ *@函数名: MonopolizeHotKey *@函数功能: 屏蔽热键 *@函数参数: bMonopolize *@入参: * bMonopolize:是否屏蔽,TRUE:屏蔽;FALSE:不屏蔽 *@出参: * *@返回值: * TRUE:屏蔽成功;FALSE:屏蔽失败 *@备注: **************************************************/ BOOL CSysMonoOperation::MonopolizeHotKey(BOOL bMonopolize) { if (bMonopolize) { if (g_hHookKbdLL == NULL) { g_hHookKbdLL = SetWindowsHookEx(WH_KEYBOARD_LL, MyTaskKeyHookLL, (HINSTANCE)AfxGetApp()->m_hInstance, 0); if (g_hHookKbdLL != NULL) { return TRUE; } return FALSE; } } else { if (g_hHookKbdLL != NULL) { UnhookWindowsHookEx(g_hHookKbdLL); g_hHookKbdLL = NULL; } } return TRUE; } 上面那个MonopolizeHotKey方法就是安装或者卸载钩子,安装bMonopolize就为TRUE,卸载bMonopolize为FALSE。

hosteons:10Gbps带宽,免费Windows授权,自定义上传ISO,VPS低至$21/年,可选洛杉矶达拉斯纽约

hosteons当前对美国洛杉矶、达拉斯、纽约数据中心的VPS进行特别的促销活动:(1)免费从1Gbps升级到10Gbps带宽,(2)Free Blesta License授权,(3)Windows server 2019授权,要求从2G内存起,而且是年付。 官方网站:https://www.hosteons.com 使用优惠码:zhujicepingEDDB10G,可以获得: 免费升级10...

无忧云:服务器100G高防云服务器,bgpBGP云,洛阳BGP云服务器2核2G仅38.4元/月起

无忧云怎么样?无忧云值不值得购买?无忧云,无忧云是一家成立于2017年的老牌商家旗下的服务器销售品牌,现由深圳市云上无忧网络科技有限公司运营,是正规持证IDC/ISP/IRCS商家,主要销售国内、中国香港、国外服务器产品,线路有腾讯云国外线路、自营香港CN2线路等,都是中国大陆直连线路,非常适合免备案建站业务需求和各种负载较高的项目,同时国内服务器也有多个BGP以及高防节点。目前,四川雅安机房,4...

美国云服务器 1核 1G 100M 10G防御 39元/月 物语云计算

物语云计算(MonogatariCloud)是一家成立于2016年的老牌国人商家,主营国内游戏高防独服业务,拥有多家机房资源,产品质量过硬,颇有一定口碑。本次带来的是美国圣何塞 Equinix 机房的高性能I9-10980XE大带宽VPS,去程CN2GIA回程AS9929,美国原生IP,支持解锁奈飞等应用,支持免费安装Windows系统。值得注意的是,物语云采用的虚拟化技术为Hyper-V,资源全...

键盘钩子为你推荐
scriptmanager怎么解决ScriptManager和Jqery冲突scriptmanagerScriptManager是什么公众号付费阅读为什么微信公众号阅读要收费?微信如何只发文字微信朋友圈如何只发文字,怎么发文字不要图防火墙技术应用防火墙的应用与研究论文ocr软件下载如何安装汉王ocr文字识别软件gbk内码Gbk内码查询怎么查微信注册时间微信号用了多久,怎么知道windows7中文语言包windows7英文改中文 windows英文版怎么安装中文语言包飞信发信息要钱吗用飞信发短信要钱吗?
yaokan永久域名经常更换 域名转让 域名注册中心 哈尔滨服务器租用 hawkhost优惠码 美国主机推荐 themeforest 哈喽图床 北京主机 java空间 太原联通测速平台 电子邮件服务器 空间论坛 169邮箱 服务器合租 能外链的相册 华为云服务登录 raid10 双12 web应用服务器 更多