web-dev-qa-db-ja.com

Right-WinおよびRight-Altキーボードキーを再マップする方法

... nicomp Ultra Classic Buckling Spring 特にキーボード。

私は最近、これらのIBMモデルMリバイバルの1つを購入しました。わずかな欠陥が1つある優れたキーボード:電源スリープがありません、Wakeキーとかなり大きな欠陥:彼らはRight-WinキーとRight-Altキーを次のように交換することにしました:

  Space   Alt Ctrl

もちろん、長年にわたって異なるレイアウトを使用しているため、これは不快です。

Microsoft Keyboard Layout Creator(MSKLC)1.4 を試しましたが、Windows 7 Professional 64ビットで正しく動作しません:の後にレイアウトが表示されませんファイル既存のキーボードをロード...

Empty MSKLC

参照 Microsoft Keyboard Layout Creator1.4がWindows7 Professional 64ビットで正しく動作しない理由はありますか?

Microsoft Keyboard Layout Creator(MSKLC)1.4 が正しく機能しないため、(ドイツ語) WinFAQ に関する情報から派生した次の低レベルのソリューションを使用できます。

選択したテキストエディタで次の2つの_.reg_ファイルを作成し、それらを交互に実行して、指定されたキー/値をWindowsのレジストリにロードします。

_HKLM^SYS^CCS^CTRL^Kbd_Layout^Scancode_Map#Swap_R-Win_R-Alt.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,\
  38,e0,5c,e0,\
  5c,e0,38,e0,\
  00,00,00,00
_

_HKLM^SYS^CCS^CTRL^Kbd_Layout^Scancode_Map#Reset.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,\
  01,00,00,00,\
  00,00,00,00
_

スキャンコードの2バイト内の LSB(最下位バイト)MSB(最上位バイト) の逆の順序に注意してください。別名 リトルエンディアン =。行継続のバックスラッシュ文字(_\_)にも注意してください。

マッピングの変更を有効にするには、Windowsを再起動するか、マシンを再起動する必要があります。

技術的背景情報

_Scancode Map_エントリ:

_┌──────────┬──────┬─────────────┬───────────────────────────────────────────────────┐_
_│ Bytes | Size | Values │ Description │_
_├──────────┼──────┼─────────────┼───────────────────────────────────────────────────┤_
_│ 0 … 3 │ 4 | 00 00 00 00 │ Header: version info, always all 0 │_
_│ 4 … 7 │ 4 | 00 00 00 00 │ Header: flags, always all 0 │_
_│ 8 … 11 │ 4 | 0m 00 00 00 │ Header: mappings count[c] + 1 [for the trailer] │_
_│ 12 … s │ c×4 | LN¹HN²LO HO │_ N _ew /_ O _ld scancodes in little-endian byte order │_
│ t … t+3 │ 4 | 00 00 00 00 │ Trailer (t = s + 1 = 12 + c × 4) │
_└──────────┴──────┴─────────────┴───────────────────────────────────────────────────┘_

¹L...下位バイト、 最下位バイト(LSB)
²H...上位バイト、 最上位バイト(MSB)

スキャンコードについては、次のページ/ドキュメントを参照してください。