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

(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 


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

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值