修改注册表值scancode map来屏蔽键盘上的键

原创
08/27 15:47
阅读数 57

抄自: 修改注册表值scancode map来屏蔽键盘上的键_不知名的程序员的博客-CSDN博客
键值: Windows10 修改键位映射 - 灰信网(软件开发博客聚合)

 

(1)“Scancode Map”是注册表中

[HKEY_LOCAL_MacHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]中的一个二进制键值(默认没有,需新建),并且有固定的格式。

Scancode Map 代码的一般格式是:

“hex:00,00,00,00,00,00,00,00,|02|,00,00,00,|映射之后的扫描码(XX XX),原扫描码(XX 

XX)|00,00,00,00”。

其含义为:前8个00(DWord两个0)是版本号和头部字节,接下来的“02”表示映射数,其最小为值为“02”,表示只映射一组(这里的数值是映射数目加上末尾用作结尾的“00,00,00,00”,因此总是比实际的映射数目大一),若要映射多组,只需增加相应的值即可,如映射2组其值应为“03”,3组为“04”。后边代码每4个是一组:前两个是映射后键位的扫描码,后两个是键位原扫描码。如果要交换两个键,则一个有两组映射,四个值的排列形式是:键A,键B,键B,键A——它表示:键A成为键B,键B成为键A。最后以“00,00,00,00” 结尾。了解了“Scancode Map”之后,我们就可以来利用添加功能键了。比如WIN键扫描码为:“E0 5B”,Esc为“00 01”,左边的Ctrl为“00 1D”,更详细的扫描码请见键盘扫描码。

重启你的电脑后,你的改变就生效了

 

(2)例如:

举例:比如说我们想把F9,F10键修改成为音量调整键,通过查表,可以得知:F9、F10扫描码分别为(00,43)、(00,44),Volume Up、Volume Down的扫描码分别为(E0,30)、(E0,2E),这样只要将Scancode设置为如下就可以了:  
"Scancode Map"=hex:00,00,00,00,00,00,00,00,03,00,00,00,30,E0,43,00,2E,E0,44,00,00,00,00,00 

注册表.reg的内容:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,03,00,00,00,30,E0,43,00,2E,E0,44,00,00,00,00,00 

(3)若要恢复键盘键位原来的布局,只需定位于注册表
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout],删除"Scancode Map"键值,然后重启电脑即可。在目前的Windows版本下面,对键盘映射是全局的,而不是针对某个用户的,如果您修改添加或者删除了某个映射,那么不管哪个用户使用,键盘都发生了变化;另外,如果一台电脑有多个键盘,那这些键盘都会产生同样的变化。

展开阅读全文
hex
加载中

作者的其它热门文章

打赏
0
0 收藏
分享
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部