键盘HOOK显示按键信息
GetKeyNameText(MapVirtualKey(iKeyValue,0)<<16));
//iKeyValue 的值为 VK_ESCAPE 等
LRESULT CALLBACK LowLevelKeyboardProc (INT nCode, WPARAM wParam, LPARAM lParam)
{
// By returning a non-zero value from the hook procedure, the
// message does not get passed to the target window
KBDLLHOOKSTRUCT *pkbhs = (KBDLLHOOKSTRUCT *)lParam;
BOOL bControlKeyDown = 0;
HWND hWnd = GetForegroundWindow();
WCHAR szClassName[MAX_PATH] = {0};
::GetClassName(hWnd, szClassName, MAX_PATH);
KBDLLHOOKSTRUCT *kb =(KBDLLHOOKSTRUCT *)lParam;
if (wParam == WM_KEYDOWN)
{
wchar_t szKeyName[100];
DWORD t = (kb->scanCode<<16) + (kb->flags<<24);
::GetKeyNameText(t,LPWSTR(szKeyName),100);
::SetDlgItemText(hWnd,IDC_KeyInput,LPCWSTR(szKeyName));
return true;
}
return CallNextHookEx(Hook,nCode,wParam,lParam); //将消息还给钩子链,不要影响别人
}
最新文章
- 使用D3绘制图表(3)--添加坐标轴和文本标签
- Android:res之shape制作圆角、虚线、渐变
- Qt之自定义信号和槽函数
- [poj2828] Buy Tickets (线段树)
- spring mvc超强的json支持,你自己根本不需要额外的配置。spring mvc都给你配置好了!!!
- org.hibernate.LazyInitializationException: could not initialize proxy - no Session
- UVALive 3989 Ladies&;#39; Choice
- python学习教程(九)sqlalchemy框架的modern映射
- Canvas createLinearGradient API
- x86-64栈帧中的“红色区域” red zone of stack frame on x86-64
- beta 分布的详细介绍(转载)
- WcPro项目(WordCount优化)
- 2017.9.16~17,热烈庆祝共创力罗老师《敏捷MINI体验式实战培训》在某大型企业成功举办!
- Android生成二维码--拍照或从相册选取图片
- jersey练习
- android sqlite3:数据库操作
- 【RL系列】马尔可夫决策过程——状态价值评价与动作价值评价
- 【51nod】1934 受限制的排列
- 84.Largest Rectangle in histogram---stack
- Linux网络配置之虚拟网卡的配置(Red Hat 6.5)
热门文章
- Leetcode 334.递增的三元子序列
- 公钥密码之RSA密码算法大素数判定:Miller-Rabin判定法!
- HDU——2444The Accomodation of Students(BFS判二分图+最大匹配裸题)
- 算法复习——LCA模板(POJ1330)
- 【bzoj1710】[Usaco2007 Open]Cheappal 廉价回文
- Spoj-VISIBLEBOX Decreasing Number of Visible Box
- *AtCoder Regular Contest 094 F - Normalization
- localStorag的一点见解
- [C++] 频谱图中 FFT快速傅里叶变换C++实现
- iOS7 毛玻璃效果