社区
硬件/系统
帖子详情
关于键盘问题(高分求助)
mousefather
2003-11-04 09:51:59
我要做一个键盘测试的小程序,目的很简单,就是测试所有按键是否能用,我的做法是先在屏幕上画一个键盘,用户按一个键亮一个键,有点类似游戏手柄测试工具之类的东西,但是有个问题,大部分的键都可以测,就是一些功能键,我只想得到他按下去的键值,不想让他起作用,比如开始键,休眠,开关机键等,我虽然能得到键值,但是没办法让他失效,不知道有什么好的办法,用hook的做法好像是可以让这些键失效,不大清楚,请高手指点,顺便问一下,哪里有所有键盘键值的表?
...全文
27
9
打赏
收藏
关于键盘问题(高分求助)
我要做一个键盘测试的小程序,目的很简单,就是测试所有按键是否能用,我的做法是先在屏幕上画一个键盘,用户按一个键亮一个键,有点类似游戏手柄测试工具之类的东西,但是有个问题,大部分的键都可以测,就是一些功能键,我只想得到他按下去的键值,不想让他起作用,比如开始键,休眠,开关机键等,我虽然能得到键值,但是没办法让他失效,不知道有什么好的办法,用hook的做法好像是可以让这些键失效,不大清楚,请高手指点,顺便问一下,哪里有所有键盘键值的表?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
carbon107
2003-11-11
打赏
举报
回复
来晚了大家都说了
yintongshun
2003-11-11
打赏
举报
回复
WPARAM wParam, LPARAM lParam这两个参数需要判断一下,如果你想屏蔽的键,就让他失效
flinming
2003-11-11
打赏
举报
回复
//拦截窗体PreTranslateMessage消息,看键盘触发哪个键
BOOL CCsDlg::PreTranslateMessage(MSG* pMsg)
{
if(pMsg->message==WM_KEYDOWN)
{
int a = pMsg->wParam;
CString b;
b.Format("%d",a);
this->SetWindowText(b);
这个你就可以确定是哪个键触发
}
return CDialog::PreTranslateMessage(pMsg);
}
ifengfeng
2003-11-11
打赏
举报
回复
#include <afxwin.h> // MFC core and standard components
mousefather
2003-11-04
打赏
举报
回复
谢谢楼上的,不过还是存在我说的问题,功能键没办法屏蔽掉,按下win键还是会弹出开始菜单,还有关机,休眠等键,有没什么办法可以让他们失效
carbon107
2003-11-04
打赏
举报
回复
以下是大键盘区
f1 0x3B00
f2 0x3C00
f3 0x3D00
f4 0x3E00
f5 0x3F00
f6 0x4000
f7 0x4100
f8 0x4200
f9 0x4300
f10 0x4400
f11 0x8500
f12 0x8600
0 0x0B30
1 0x0231
2 0x0332
3 0x0433
4 0x5434
5 0x0635
6 0x0736
7 0x0837
8 0x0938
9 0x0A39
左 0x4BE0
右 0x4DE0
上 0x48E0
下 0x50E0
tab 0x0F09
- 0x0C2D
+ 0x0D3D
回车 0x1C0D
以下是小数字键盘
0 0x5200
1 0x4F00
2 0x5000
3 0x5100
4 0x4B00
5 0x4C00
6 0x4D00
7 0x4700
8 0x4800
9 0x4900
- 0x4A2D
+ 0x4E2B
回车 0xE00D
其它的编程实现
http://www.156ok.com/article/article_list.asp?account_id=920
键盘HOOK程序,看看这个能不能帮助你
ManFred2ManFred
2003-11-04
打赏
举报
回复
到精华区去看看hook的用法介绍吧。
mousefather
2003-11-04
打赏
举报
回复
WH_KEYBOARD_LL这个东西不能用啊,msdn 里有,但是我在程序里写,编译不了,是不是这个东西现在不能用了?
9headbird
2003-11-04
打赏
举报
回复
用底层键盘钩子LowLevelKeyboardProc()可以解决这个问题
注入钩子SetWindowsHookEx(WH_KEYBOARD_LL,(HOOKPROC)LowLevelKeyboardProc,hins,0);
在回调函数LRESULT CALLBACK LowLevelKeyboardProc(int nCode, WPARAM wParam, LPARAM lParam)中进行判断:
如果wParam==WM_SYSKEYDOWN,则再判断由lParam得到的虚拟键值是否是你想要屏蔽的键;如果是,则在此回调函数中返回1(你可以在返回1之前发送一个消息并传递键值给你的测试程序);
这样你所指定功能间就被屏蔽掉了,
在你的应用程序中你应该在你测试完毕后卸载此钩子,否则该功能键就一直被屏蔽直至系统关机或注销
基础
各位兄弟,在SDK编程中如果实现...
求助
:通过编程DirectX抓屏------>masterz:再麻烦你一下,谢谢熟悉RichEdit的朋友过来看一下,RichEdit的几个
问题
.如何对 I/O 端口进行操作?有了该
问题
就有了思考(100分 献礼!)如何
单选题 计算机软件一般包括,
求助
,50道计算机试题~求答案
主机、
键盘
和显示器 B. 硬件系统和软件系统 C. 系统软件与应用软件 D. 计算机与外部设备 50.单选题: 具有多媒体功能的微型计算机系统中,常用的CD-ROM是( ) 。 A. 半导体只读存储器 B. 只读型大容量软盘 C. 只读...
打飞机游戏c语言程序,[
求助
]导弹打飞机c语言游戏程序
[
求助
]导弹打飞机c语言游戏程序希望哪个好心人能帮忙,初学者编得很困难,时间期限又快到了.给个原代码或者指点一二都十分感谢的.(需要在dos环境下的bc上运行)以下是程序的要求.本程序为一导弹打飞机的小型游戏,界面...
c语言打飞机代码思路,[
求助
]导弹打飞机c语言游戏程序
[
求助
]导弹打飞机c语言游戏程序希望哪个好心人能帮忙,初学者编得很困难,时间期限又快到了.给个原代码或者指点一二都十分感谢的.(需要在dos环境下的bc上运行)以下是程序的要求.本程序为一导弹打飞机的小型游戏,界面...
单选题7.微型计算机接口位于,
求助
,50道计算机试题~求答案
主机、
键盘
和显示器 B. 硬件系统和软件系统 C. 系统软件与应用软件 D. 计算机与外部设备 50.单选题: 具有多媒体功能的微型计算机系统中,常用的CD-ROM是( ) 。 A. 半导体只读存储器 B. 只读型大容量软盘 C. 只读...
硬件/系统
2,640
社区成员
17,239
社区内容
发帖
与我相关
我的任务
硬件/系统
VC/MFC 硬件/系统
复制链接
扫一扫
分享
社区描述
VC/MFC 硬件/系统
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章