C++禁止键盘和鼠标事件
最近做了一个小工具,可以远程控制锁定和解锁计算机,锁定就是通过禁用鼠标和键盘事件来限制,使用的WINDOWS的HOOK函数,下面分享一下具体的实现方法:
1、首先是两个钩子函数:
HHOOK hook_hwnd_keyboard = NULL;
HHOOK hook_hwnd_mouse = NULL;
HMODULE g_module;// 鼠标事件
LRESULT CALLBACK MyHookFunMouse(int nCode, WPARAM wParam, LPARAM lParam)
{// 鼠标所有事件都不处理return 1;
}// 键盘事件
LRESULT CALLBACK MyHookFunKeyBoard(int nCode, WPARAM wParam, LPARAM lParam)
{PKBDLLHOOKSTRUCT pVirKey = (PKBDLLHOOKSTRUCT)lParam;if (nCode >= 0){// 按键消息switch (wParam){case WM_KEYDOWN:case WM_SYSKEYDOWN:case WM_KEYUP:case WM_SYSKEYUP:switch (pVirKey->vkCode){case VK_LWIN:case VK_RWIN:return 1;break;}return 1;break;}}return CallNextHookEx(hook_hwnd_keyboard, nCode, wParam, lParam);
}
2、然后分别把鼠标和键盘这两个函数设置进去;这样就达到了锁定电脑,鼠标和键盘都不可用了;
PS:测试的时候记得两个函数不要同时测,否则就把自己电脑锁死了
hook_hwnd_keyboard = SetWindowsHookEx(WH_KEYBOARD_LL, MyHookFunKeyBoard, g_module, 0);
hook_hwnd_mouse = SetWindowsHookEx(WH_MOUSE_LL, MyHookFunMouse, g_module, 0);
3、取消HOOK函数的设置进行解锁
UnhookWindowsHookEx(hook_hwnd_keyboard);
UnhookWindowsHookEx(hook_hwnd_mouse);
PS: 键盘锁定实现参考与:https://blog.csdn.net/what951006/article/details/79769317;
C++禁止键盘和鼠标事件相关推荐
- 禁止程序接收鼠标事件的工具_VNC Viewer for Mac(远程桌面工具)免费版
VNC Viewer for Mac是一款运行在Mac平台上的远程桌面工具,vnc viewer mac版可以帮助您使用Mac的键盘和鼠标来控制远程计算机,操作简单,功能实用. VNC Viewer ...
- winform中键盘和鼠标事件的捕捉和重写(转)
在 编写winform应用程序时,有时需要无论在哪个控件获取焦点时,对某一个键盘输入或者鼠标事件都进行同样的操作.比如编写一个处理图片的应用程序时, 希望无论当前哪个控件获得焦点,当用户按上.下.左. ...
- android详细解释键盘和鼠标事件
目的:通过全面的分析Android的鼠标和键盘事件.了解Android中如何接收和处理键盘和鼠标事件,以及如何用代码来产生事件. 主要学习内容: 1. 接收并处理鼠标事件:按下.弹起.移动.双击.长按 ...
- golang调用sdl2,键盘和鼠标事件
golang调用sdl2,键盘和鼠标事件 win10 x64下测试成功,其他操作系统下不保证成功. 采用的是syscall方式,不是cgo方式. 见地址 代码用golang编写.代码如下: packa ...
- 键盘和鼠标事件中按键的数字是多少呢?event.which
event.which 针对键盘和鼠标事件,这个属性能确定你到底按的是哪个键. <!DOCTYPE html> <html> <head><script sr ...
- Selenium2学习(八)-- 操作元素(键盘和鼠标事件)
前言 在前面的几篇中重点介绍了一些元素的到位方法,到位到元素后,接下来就是需要操作元素了.本篇总结了web页面常用的一些操作元素方法,可以统称为行为事件 有些web界面的选项菜单需要鼠标悬停在某个元素 ...
- python函数调用键盘热键_Tkinter对键盘和鼠标事件的处理
所谓event事件就是程序上发生的事.例如用户敲击键盘上的某一个键或是点击移动鼠标.而对于这些事件,程序需要做出反应. Tkinter提供的组件通常都包含许多内在行为,例如当按钮被点击时执行特定操作或 ...
- html选择按键点击后锁死输入框_js Dom为页面中的元素绑定键盘或鼠标事件
html鼠标事件 onload 页面加载 onclick 鼠标单击 onmouSEOver 鼠标移入 onmouSEOut 鼠标移出 onfocus 获取焦点 onblur 失去焦点 onchange ...
- 计算机二级vb程序设计教程第10章键盘与鼠标事件
本章介绍和键盘鼠标有光的事件过程 KeyPress事件 当压下键盘上的某个键的时候,将发生KeyPress事件 精确描述: 按下某个键,我们将触发此时拥有焦点的KeyPress 事件. 输入焦点只能位 ...
- 禁止程序接收鼠标事件的工具_报表工具html事件--鼠标悬停出现提示信息
概述 – 提示:指启示,提起注意或给予提醒和解释. 在 excel 中会经常用到给某个格子增加提醒信息,比如金额提示输入数值或最大长度值等等.设置方式也有多种,简单的,仅为单元格插入批注就可以了,也有 ...
最新文章
- 自定义View(二),强大的Canvas
- python基础语法手册format-python基础_格式化输出(%用法和format用法)
- VS2017 安装,建议大家都看一下这个在卸载,真人真事,防止扑街
- python--open用法
- 开发中我们谈的产品化是什么?阿里是怎么看待产品化?
- iOS-最全的App上架教程
- WPF中MVVM模式(简略介绍)
- JFinal上传文件时用getFile()方法报错
- 【CS231n_2017】1-Introduction to CNN for Visual Recognition
- java 第三方jar推荐_java 开发第三方Jar包
- SPSS基础操作(一):用幂指数型的权函数建立加权最小二乘回归方程
- 语法错误 : 缺少“;”(在“*”的前面)_学科教学不能缺少生本意识
- k8s高可用多节点master搭建
- python-图像处理-计算机视觉基础-numpy-pandas-PIL
- 连接手表_用EMUI11连接华为手机与手表 出门不用全程盯着手机
- 伤寒杂病论.辨阳明病脉证并治
- DNF纯图色起号源码
- Java8之Lambda函数式编程(一)
- python2.xhe 3.x区别
- 统计学的Python实现-009:四分位数