Для переназначения любого физического ключа на клавиатуре есть запись в реестре.
Именно в нем [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
вы создаете ключ с именем Scancode Map
. Он может перенаправить любой ключ на другой ключ или отключить его.
Этот ключ является шестнадцатеричным значением со следующим значением:
00,00,00,00 Header: Version. Set to all zeroes.
00,00,00,00 Header: Flags. Set to all zeroes.
05,00,00,00 5 entries in the map (including null entry).
38,00,1d,00 Left CTRL -> Left ALT (can also be another key).
1d,00,38,00 Left ALT -> Left CTRL.
38,e0,1d,e0 Right CTRL -> Right ALT.
1d,e0,38,e0 Right ALT -> Right CTRL.
00,00,00,00 Null entry.
Чтобы поменять местами клавиши CTRL и ALT, вам нужно четыре записи (плюс ноль).
Левый Left-CTRL(1d 00), левый Left-ALT(38 00), Right-CTRL(1d e0) и Right-ALT(38 e0).
Таким образом, вы можете создать файл .reg следующим образом: Disable_CTRL-key.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,05,00,00,00,38,00,1d,00,1d,00,38,00,38,e0,1d,e0,1d,e0,38,e0,00,00,00,00
Выполните (двойной щелчок) файл .reg, выйдите и снова войдите (или перезагрузите компьютер). Теперь ваши клавиши CTRL и ALT должны были поменяться местами.
Другие полезные ключи, чтобы знать:
1d 00 Left Ctrl
1d e0 Right Ctrl
38 00 Left Alt
38 e0 Right Alt
5b e0 Left Windows Key
5c e0 Right Windows Key
5d e0 Windows Menu Key
( На основании этого ответа по Rik )
Если вам неудобно менять реестр или вам нужны другие ключи, вы можете использовать программу SharpKeys, чтобы редактировать их проще. Он также имеет удобный список всех клавиш, так что вы можете просто добавить их в окно.
В то время как SharpKeys (возможно - я не могу на самом деле убедиться, что он работал) использовался в качестве альтернативного варианта, в текущем файле Readme от SharpKeys говорится, что SharpKeys нельзя использовать для этой цели, хотя его можно использовать для других переназначений клавиш. ( ч / т вор )
В качестве альтернативы я обнаружил Windows Server 2003 Resource Kit Tools, который содержит небольшой исполняемый файл remapkey.exe
, размер которого составляет всего 340 КБ. Это графическая программа, которая позволяет переназначать клавиши вашей клавиатуры. Требуется перезагрузка, как и при любом ручном изменении. В Windows Vista + это потребует прав администратора.
В поисках скриншотов я наткнулся на другой ответ на этом сайте, который рекомендует его:
Лучший инструмент для этой работы - собственный Microsoft remapkey
, доступный как часть Windows Resource Kit . (Эта ссылка для Windows 2003; я успешно использовал ее на протяжении многих лет во многих версиях Windows, включая Windows 7; не тестировал Windows 8).
remapkey
Я полагаю, что будет записывать сопоставление непосредственно в реестр и не требует запуска процесса. Вы просто перетаскиваете фактическую клавишу на нужную клавишу и сохраняете.
Дальнейшее чтение: