在注册表的这个位置
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\KeyboardLayout
新建一个Scancode Map二进制值,这个二进制值可以任意调换按键,内容格式如下:
hex:00,00,00,00,00,00,00,00,|02|,00,00,00,|原键,替代键,原键,替代键,|00,00,00,00
前8个00是版本号,接下来的“02”表示映射数,其最小为值为“02”,表示只映射一组,若要映射多组,只需增加相应的值即可,如映射2组其值应为“03”,3组为“04”,4组为“05”
。
紧接着跟3个00,
之后每4个按键码为一组(每个按键码2个字节),
前两个是映射后键位的扫描码,后两个是键位原扫描码,如果想调换两个按键就应写成“原键,替代键,替代键,原键” 的形式。
最后要以4个00结尾。
例:调换LCtrl和CapsLock:
00,00,00,00,00,00,00,00,02,00,00,00,3A,00,1D,00,1D,00,3A,00,00,00,00,00
00,00,00,00,00,00,00,00,|03|,00,00,00,|1E,00,30,00,30,00,1E,00|,|15,00,2C,00,2C,00,15,00|,00,00,00,00
00,00,00,00,00,00,00,00,|05|,00,00,00,|3a,00,1d,00,1d,00,3a,00|,|38,00,5b,e0,5b,e0
,38,00|,|38,e0,5d,e0,5d,e0,38,e0|,|0e,00,2b,00,2b,00,0e,00|,00,00,00,00
从另一个地方找了一个scancode码表: