Windows控制台下响应键盘消息
2014-10-10 16:47
260 查看
利用hook技术,hook键盘消息,每次摁下和松开按键时都打印信息
源代码如下
#include <windows.h>
#include <stdio.h>
HHOOK g_Hook;
LRESULT CALLBACK KeyboardProc(int code,WPARAM w,LPARAM l)
{
if(w == WM_KEYDOWN)
printf("摁下按键\n");
else if(w == WM_KEYUP)
printf("抬起按键\n");
return CallNextHookEx(g_Hook,code,w,l);
}
int main()
{
MSG msg;
g_Hook = SetWindowsHookEx(WH_KEYBOARD_LL,KeyboardProc,GetModuleHandle(NULL),0);
while(GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
UnhookWindowsHookEx(g_Hook);
return 0;
}
源代码如下
#include <windows.h>
#include <stdio.h>
HHOOK g_Hook;
LRESULT CALLBACK KeyboardProc(int code,WPARAM w,LPARAM l)
{
if(w == WM_KEYDOWN)
printf("摁下按键\n");
else if(w == WM_KEYUP)
printf("抬起按键\n");
return CallNextHookEx(g_Hook,code,w,l);
}
int main()
{
MSG msg;
g_Hook = SetWindowsHookEx(WH_KEYBOARD_LL,KeyboardProc,GetModuleHandle(NULL),0);
while(GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
UnhookWindowsHookEx(g_Hook);
return 0;
}
相关文章推荐
- [C/C++]_[Linux,Windows,MacOSX控制台即时响应按键消息]
- [C/C++]_[Linux,Windows,MacOSX控制台即时响应按键消息]
- C++控制台程序,windows环境下响应按键消息实现一
- 利用钩子函数来捕捉键盘响应的windows应用程序
- Windows在各种情况下的响应的消息(大集合)-【学习札记】
- 利用钩子函数来捕捉键盘响应的windows应用程序
- 对话框不能响应键盘消息
- 控制台如何像windows程序那样处理消息事件
- windows的鼠标、键盘消息(阅windows核心编程笔记)
- 对话框响应键盘消息的方法
- 如何让自己的应用程序,控制台程序,windows 服务收到操作系统注销或者重启的消息
- VC/MFC 键盘消息的截取与响应
- Tips: 如何让自己的应用程序,控制台程序,windows 服务收到操作系统注销或者重启的消息?
- 实现Windows应用程序对键盘与鼠标的响应
- C#如何:使用 MessageWindow 类来响应Windows的消息
- C#中键盘消息的响应
- DXUT 学习笔记(3)对键盘鼠标的响应 及 消息处理
- 响应键盘消息
- 在VC中,让动态创建的ActiveX控件响应Windows消息[转]
- 使用 MessageWindow 类来响应Windows的消息