博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【转】键盘坏了,用注册表来修:Win7/XP修改注册表,替换按键映射
阅读量:5140 次
发布时间:2019-06-13

本文共 2608 字,大约阅读时间需要 8 分钟。

因为清洗本本,清洗液放多了,把键盘D给弄失灵了!弄了个注册表修改如下:
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,02,00,00,00,3b,00,20,00,00,00,00,00
 
好了,这下可以用F1键盘来输入dD了!顺便提一下,就是键盘没坏,这样也可以用来屏蔽自家不喜欢的键,比如我就不喜欢按到F1跳出帮助来!
 
另外修改成功是参考了下面这篇文章,感谢一下:
 
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

 
 
替换左win和左alt

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]

"00000409"="KBDUS.DLL"
"Scancode Map"=hex:00,00,00,00,00,00,00,00,02,00,00,00,5B,E0,38,00,38,00,5B,E0,00,00,00,00

转载于:https://www.cnblogs.com/elta/articles/7830972.html

你可能感兴趣的文章
用户空间与内核空间,进程上下文与中断上下文[总结]
查看>>
JAVA开发环境搭建
查看>>
django迁移数据库错误
查看>>
Data truncation: Out of range value for column 'Quality' at row 1
查看>>
字符串处理
查看>>
ad logon hour
查看>>
罗马数字与阿拉伯数字转换
查看>>
Eclipse 反编译之 JadClipse
查看>>
距离公式汇总以及Python实现
查看>>
Linux内核态、用户态简介与IntelCPU特权级别--Ring0-3
查看>>
第23月第24天 git命令 .git-credentials git rm --cached git stash clear
查看>>
java SE :标准输入/输出
查看>>
[ JAVA编程 ] double类型计算精度丢失问题及解决方法
查看>>
好玩的-记最近玩的几个经典ipad ios游戏
查看>>
Sql Server 中由数字转换为指定长度的字符串
查看>>
tmux的简单快捷键
查看>>
[Swift]LeetCode922.按奇偶排序数组 II | Sort Array By Parity II
查看>>
php match_model的简单使用
查看>>
Vue_(组件通讯)子组件向父组件传值
查看>>
移动开发平台-应用之星app制作教程
查看>>