windows下交换 Capslock和左ctrl

capslock.reg

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

 

 

un_capslock.reg

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=-

 

分别建两个文件capslock.reg和un_capslock.reg,并将上面的内容复制到文件中。

caplock.reg用于切换键。

un_caplock.reg用于清除切换键。

 

注册表 Scancode Map的原理

 

第一部份:8个 00 ,这是版本信息号。照例写就是了。

第二部份:4个字节。表示映射键的总数。按照二进制数的读写规则,低位在左,高位在右,02 00 00 00 这个数实际就是:0000 00 02 。 从 02 开始,一个映射键是 02 ,两个是03 ,依次递加,十个是 0B 。

第三部份:2个字节。表示替换后按键的”扫描码“。如:ESC 键的扫描码是 01 ,所以就表示 01 00 。再如左Ctrl键扫描码是 1D 00, 而右Ctrl键是 1D E0 。

第四部份:2个字节。表示原按键的”扫描码“。格式同上。

第五部份:以四个 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

参考:

http://emacser.com/capslock.htm

http://blog.sina.com.cn/s/blog_53b8ea250101gc6l.html

 

http://emacser.com/capslock.htm

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值