通过注册表修改键盘

本文介绍了如何通过修改注册表或使用KeyTweak软件来改变键盘上按键的功能,特别是将Home与End键替换为PgUp和PgDn。修改涉及到键盘扫描码和注册表中的"Scancode Map"键值,手动操作需谨慎。
摘要由CSDN通过智能技术生成

本人电脑联想E550,出于程序员的职业实在无法忍受Home与End键不与方向键挨在一起,而与方向键挨着的是PgUp和PgDn。经过研究,了解到可以通过修改注册表文件来修改键盘按键。有两种方法可以完美解决这个问题,不过这两种方法的本质是一样的。

方法一:手动修改注册表来改键

普及一个概念:键盘扫描码

键盘上的每一个键都有两个唯一的数值进行标志。为什么要用两个数值而不是一个数值呢?这是因为一个键可以被按下,也可以被释放。当一个键按下时,它们产生一个唯一的数值,当一个键被释放时,它也会产生一个唯一的数值,我们把这些数值都保存在一张表里面,到时候通过查表就可以知道是哪一个键被敲击,并且可以知道是它是被按下还是被释放了。这些数值在系统中被称为键盘扫描码。我们要改的就是对应键的键盘扫描码。注册表中的Scancode Map(扫描映射)可以是我们随意的修改键盘上的按键。

“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。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值