//首先定义
HWND g_hWnd;            //定义一个窗口的句柄
HHOOK g_hMouse;         //鼠标的钩子过程
HHOOK g_hKeyBoard;      //键盘的钩子过程

//鼠标钩子过程的回调函数
HRESULT CALLBACK MouseProc(int nCode, WPARAM wParam, LPARAM lParam)
{
 return 1;
}

//键盘钩子过程的回调函数
HRESULT CALLBACK KeyboardProc(int nCode, WPARAM wParam, LPARAM lParam)
{
/*
if(VK_SPACE==wParam)  //VK_SPACE为设备虚拟码,表示空格
//我们可以选择go to definition找到其他虚拟码,如果我们
//同时屏蔽掉回车键,这时按键盘上的Alt+F4键可以退出。
//如果你连Alt+F4都想屏蔽,添加以下判断语句
//if(VK_F4==wParam && (lParam>>29 & 1))
//lParam右移29位,正好它的第二十九位在第一位上,
//lParam得第二十九位表示了Alt键被按下
return 1;
*/

///使程序在F2键按下后退出/
 if(VK_F2==wParam)
 {
  //::SendMessage(g_hWnd,WM_CLOSE,0,0);  //发送关闭消息
  UnhookWindowsHookEx(g_hKeyBoard);
  UnhookWindowsHookEx(g_hMouse);//移除一个已经安装的hook
  //当我们自己发送消息关闭程序时,一定要记得关闭Hook

return 1;
 }
 
 else
  return CallNextHookEx(g_hKeyBoard,nCode,wParam,lParam);
 //返回下一个钩子过程(一次按键相当于一个钩子过程)
 
}

BOOL CTTDDDlg::OnInitDialog()
{
 CDialog::OnInitDialog();

// Set the icon for this dialog.  The framework does this automatically
 //  when the application's main window is not a dialog
 SetIcon(m_hIcon, TRUE);   // Set big icon
 SetIcon(m_hIcon, FALSE);  // Set small icon
 
 // TODO: Add extra initialization here
 g_hWnd = m_hWnd;         //获得当前窗口的句柄,供回调函数用
 // 安装一个鼠标hook,GetCurrentThreadId()返回调用线程的线程标识
 g_hMouse = SetWindowsHookEx(WH_MOUSE,MouseProc,NULL,GetCurrentThreadId());
 // 安装一个键盘hook
 g_hKeyBoard = SetWindowsHookEx(WH_KEYBOARD,KeyboardProc,NULL,GetCurrentThreadId());

return TRUE;  // return TRUE  unless you set the focus to a control
}

转载于:https://www.cnblogs.com/carekee/articles/2325771.html

用HOOK禁用鼠标与键盘点击相关推荐

  1. python 模拟鼠标,键盘点击

    信息爆炸 '''消息轰炸模拟鼠标和键盘敲击'''import time from pynput.keyboard import Controller as key_col from pynput.mo ...

  2. python模拟鼠标键盘点击,简单自动化动物餐厅

    Python模拟鼠标键盘点击自动化 首先在玩动物餐厅的时候发现他需要连续点击才能完成任务,而这有是一项枯燥而复杂的任务,所以我就想到用python的鼠标模拟来自动完成 Python中模拟键盘和鼠标最著 ...

  3. DOS窗口(控制台程序)禁用鼠标左键选择(暂停程序的功能)

    一.界面设置 DOS窗口右击标题栏,选择属性,出现下图所示属性界面 取消"快速编辑模式"勾选,点击"确定"按钮,就大功告成 二.代码设置 作为程序猿的我们,怎么 ...

  4. 娱乐蓝屏程序, 禁用键盘鼠标, 指定键可恢复

    实现蓝屏的整体思路: 全屏显示, 自编写蓝屏屏幕 禁用鼠标输入, 禁用所有键盘输入后释放指定按键以退出程序 启动线程不断杀死打开的任务管理器进程 启动线程监听等待用户按键的按下, 以完成退出 目前设置 ...

  5. 点击鼠标左键 自动锁定计算机图标,鼠标一按左键桌面图标就消失了怎么办_为什么按鼠标左键时桌面图标都不见了...

    最近有不少用户反馈说碰到这样一个奇怪的现象,就是鼠标只要在桌面一按左键,左面上的图标就会消失了,而且点击鼠标也没有什么用,那么为什么按鼠标左键时桌面图标都不见了呢?原因有很多,可能是系统故障或者中毒等 ...

  6. VC++ Hook截取鼠标点击窗口消息的问题!全局钩子

    VC++ Hook截取鼠标点击窗口消息的问题!全局钩子,高手进! 悬赏分:0 - 提问时间: 2010年05月19日 06时20分 我在做毕业设计,现在遇到一个问题,像求教高手: 我想实现如下功能,当 ...

  7. css禁用鼠标点击事件

    1.css禁用鼠标点击事件 .disabled { pointer-events: none; } 转载于:https://www.cnblogs.com/jiangtuzi/p/5728230.ht ...

  8. 网站选择按钮点击无反应?_Win10系统电脑鼠标左键单击没有反应的解决办法

    Win10系统鼠标左键单击没有反应是怎么回事?最近一个用户在用电脑的时候,突然遇到鼠标左键单击没有反应的问题,是鼠标坏了吗?还是系统问题呢?今天就给大家分析Win10系统电脑鼠标左键单击没有反应的可能 ...

  9. eclipse 点击 ctrl+鼠标左键不能进入方法

    之前下载的jdk1.10版本中,eclipse点击ctrl+鼠标左键可以进入方法,但jdk1.10版本连接sql server数据库有一些bug,所以换了jdk1.8版本,但是换了之后发现点击ctrl ...

最新文章

  1. 服务器通过光纤模块挂载存储服务器
  2. 「超全」工欲善其事必先利其器!
  3. 事物运动的状态和方式是谁提出的_金属材料在电磁场中的行为方式及其与光电效应的关系分析...
  4. arm linux内核调试,kgdb在ARM开发板上调试kernel成功
  5. 常见问题_数组索引越界异常
  6. netty源码解解析(4.0)-2 Chanel的接口设计
  7. 模拟退火算法解决np_P和NP问题与解决方案| 演算法
  8. 即将发布的 JDK 11 包含了什么?
  9. QVector、QList、QLinkedList 类
  10. 安装虚拟机时勾选增强型键盘驱动程序有什么用?(在软件安装或者升级时候没勾选怎么办)
  11. 嵌入式BI助力ISV厂商决胜大数据时代
  12. IAR环境下的STM32H750片外QSPI Flash下载仿真
  13. OceanBase数据库Docker部署文档
  14. 抖音壁纸小程序搭建教程
  15. 京东评论爬虫(详解)
  16. 【SIGIR2017满分论文】IRGAN:大一统信息检索模型的博弈竞争
  17. 模型剪枝学习笔记 --- EagleEye: Fast Sub-net Evaluation for Efficient Neural Network Pruning
  18. 谢特——后缀数组+tire 树
  19. ip地址合不合法怎么看_怎样判断IP地址的非法性?
  20. String转字节数组

热门文章

  1. mybatis批量夺标添加_MyBatis+MySQL同时执行多条SQL,实现多表插入数据
  2. An Algorithm Summary of Programming Collective Intelligence
  3. Thinking In Machine Learning
  4. matlab给定四点求交点,Matlab有关曲线求交点程序分享
  5. vba遍历数组_VBA代码解决方案的第59讲内容:如何在代码运行时创建数组
  6. linuxpython23同时_linux上安装python3同时保留python2
  7. oss上传文件不能在浏览器直接打开_OSS使用Bucket域名访问直接下载不能打开网页的解决方法...
  8. pandas pivot 计算占比_数据分析Pandas 基础(二)
  9. python刷新网页脚本_python语言如何测试实现页面下拉刷新
  10. 结对编程小项目实现 Python+PyQt5+OOP