Windows修改注册表按键映射

Scancode Map 注册表项来实现键盘按键映射。

 位于注册表的:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout\ 下新建一个二进制值项:  "Scancode Map"

这个项目可实现对键盘按键的映射。这里映射的意思可理解为“替换”,可将任意一键替换成其它键。

 

[项目格式]

以16进制表示,更分为五个部分,每个逗号之间都为一个字节。

"Scancode Map" = 00,00,00,00,00,00,00,00,   02,00,00,00,   01,00,   02,00,    00,00,00,00 

  1. 8个字节。 这是版本信息号。照例写就好。
  2. 4个字节。 这是映射键的总数。按照二进制的读写规则,低位在左,高位在右。02 00 00 00 这个数实际就是:00 00 00 02 。从 02 开始,一个映射键是 02 ,两个是03 ,依次递加,十个是 0B 。
  3. 2个字节。 表示替换后按键的”扫描码“。如:ESC 键的扫描码是 01 ,所以就表示 01 00 。再如 左Ctrl键扫描码是 1D 00, 而右Ctrl键是 1D E0 。
  4. 2个字节。 表示原按键的”扫描码“。格式同上。
  5. 以四个 00 结束。
 

[键盘扫描码]

以十六进制表示,分两部份,0X后面两个数是扫描码,最后两个数是 ASCII 码(可忽略)。如 0x011b          ESC 扫描码是01。


扫描码    键

0X011B ESC 
0X3B00 F1 
0X3C00 F2 
0X3D00 F3 
0X3E00 F4 
0X3F00 F5 
0X4000 F6 
0X4100 F7 
0X4200 F8 
0X4300 F9 
0X4400 F10

 

主键盘区: 
0X2960 ~ 
0X0231 1 
0X0332 2 
0X0433 3 
0X0534 4 
0X0635 5 
0X0736 6 
0X0837 7 
0X0938 8 
0X0A39 9 
0X0B30 0 
0X0C2D - 
0X0D3D = 
0X2B5C " 
0X0E08 退格键 
0X0F09 TAB 
0X1071 Q 
0X1177 W 
0X1265 E 
0X1372 R 
0X1474 T 
0X1579 Y 
0X1675 U 
0X1769 I 
0X186F O 
0X1970 P 
0X1A5B [ 
0X1B5D ] 
0X1E61 A 
0X1F73 S 
0X2064 D 
0X2166 F 
0X2267 G 
0X2368 H 
0X246A J 
0X256B K 
0X266C L 
0X273B ; 
0X2827 ' 
0X1C0D 回车 
0X2C7A Z 
0X2D78 X 
0X2E63 C 
0X2F76 V 
0X3062 B 
0X316E N 
0X326D M 
0X332C , 
0X342E . 
0X352F / 
0X3920 空格键


右边数字键盘: 
0X5200 INSERT 
0X4700 HOME 
0X4900 PAGE UP 
0X5300 DELETE 
0X4F00 END 
0X5100 PAGEDOWN 
0X4800 上箭头 
0X4B00 左箭头 
0X5000 下箭头 
0X4D00 右箭头 
0X352F / 
0X372A * 
0X4A2D - (注意,这是数字键盘的)
0X4737 7 
0X4838 8 
0X4939 9 
0X4B34 4 
0X4C35 5 
0X4D36 6 
0X4E2B + 
0X4F31 1 
0X5032 2 
0X5133 3 
0X5230 0 
0X532E DEL

左 Crtl 扫描码是 1D ,表示 1D 00 。 右 Ctrl 键扫描码是 E01D,表示 1D E0。

左 ALT 扫描码是 38 ,表示 38 00 。 右 ALT 键扫描码是 E0 38,表示 38 E0。

左 Shift 扫描码是 2A ,表示 2A 00 。 右 Shift 键扫描码是 36 ,表示 36 00

 

[示例]

1.屏蔽左侧WIN键

  "Scancode Map"=00,00,00,00,00,00,00,00,02,00,00,00,00,00,5B,E0,00,00,00,00 

2.屏蔽右侧WIN键

  "Scancode Map"=00,00,00,00,00,00,00,00,02,00,00,00,00,00,5C,E0,00,00,00,00

3.屏蔽左右WIN两个键

  "Scancode Map"=00,00,00,00,00,00,00,00,03,00,00,00,00,00,5B,E0,00,00,5C,E0,00,00,00,00

4.替换左Crtl键为左Alt键

  "Scancode Map"=00,00,00,00,00,00,00,00,02,00,00,00,38,00,1D,00,00,00,00,00 

转载于:https://www.cnblogs.com/yygyqkhh/p/5614560.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值