9/30/14

win7左ctrl和左alt键互换

主要参考这篇文章: http://xyztony1985.blog.163.com/blog/static/3611782011752420104/

感谢原博主

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,38,00,1D,00,1D,00,38,00,00,00,00,00

在记事本上复制如上代码。之后保存为.reg格式的文件。
点击执行,选择是。
之后重启就搞定了。


以下为对原文的引用。

重点解读

重点分析上面代码中的那一长串二进制,为方便分析,拆分为每8位一行,并加上行号,结果如下:
复制代码
"Scancode Map"=hex:
00,00,00,00,
00,00,00,00,
03,00,00,00,
38,00,1D,00,
1D,00,38,00,
00,00,00,00
复制代码
头两行和最后一行,是固定的,都是8个0。
第3行,表示共更改了多少个按键,本例为3个,怎么算的?从第4行开始,到最末尾行(虽然严格来说末行不算),每行算1个,4、5、6行,刚好3个。
第4行,前后各4位,分别代表某个按键。本例为将38,00的按键映射为1D,0038,00代表Left alt键,1D,00代表Left ctrl键。
第5行,同理,下一行即Left ctrl映射为Left alt。
      第6行,已经讲了,末行,固定8个0。如果需要增加更多的映射,可以在此行之上,不断加类似4、5行格式的。当然,最后的结果,还是要将各行合为一行的。

附录

部分按键映射对照表,需要查看全部对照
复制代码
Escape             01 00
Tab              0F 00
Caps Lock          3A 00
Left Alt           38 00
Left Ctrl          1D 00
Left Shift         2A 00
Left Windows       5B E0
Right Alt          38 E0
Right Ctrl         1D E0
Right Shift        36 00
Right Windows      5C E0
Backspace          0E 00
Delete             53 E0
Enter              1C 00
Space              39 00
Insert             52 E0
HOME               47 E0
End                4F E0
Num Lock           45 00
Page Down          51 E0
Page Up            49 E0
Scroll Lock        46 00
复制代码
还有一个特殊的值——00 00,表示啥也不干,如果要将某个按键禁用,只需映射为00 00。

No comments:

Post a Comment