Однажды появилась у меня клавиатура Apple Keyboard aluminum, удобная, красивая, но есть определенная несовместимость в раскладке к которой обычно привыкаешь.
Основной проблемой стало полное отсутствие клавиши Insert, на ее месте располагается клавиша Fn, которая расширяет возможности функциональных клавиш и абсолютно бесполезна в Windows т.к. при нажатии на нее не передается никакой scan код. Нет привычных Print Screen или Pause/Break, зато теоретически можно с помощью дополнительных драйверов научить клавиатуру от apple быть клавиатурой от apple, т.е. уметь регулировать яркость монитора, управлять медиаплеером, громкостью, открывать лоток CD-ROMа, теоретически, потому что мне это ничего не надо, так что не будем на это терять время.
Посмотрим на клавиатуру по ближе и поймем, чего на в ней нехватает и что тут лишнее.
Клавиша открытия лотка CD-ROMa нам не интересна, не трогаем ее.
С клавишей Fn ни чего поделать нельзя, так что она просто будет занимать место на клавиатуре.
Insert перенесем на F13.
Print Screen на F14.
Break на F15 (Pause работать не будет, только комбинация Ctrl+Break).
Далее меняем местами Alt и Command, что бы было привычнее.
Ну и чуть чуть мультимедиа.
F16 - уменьшить громкость
F17 - увеличить громкость
F18 - Отключить звук (mute)
Для всех этих действий можно воспользоваться готовыми программами, на пример SharpKeys, суть их работы заключается в правке ветки реестра [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout], но некоторые действия с помощью этих программ задать не получается (на пример назначить клавише F15 действие Break).
Попробуем разобраться что же это за параметр реестра и как самому задать необходимые клавиши.
В ветви реестра
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout
есть двоичный параметр с именем "Scancode Map". Он имеет следующую структуру:
Первые 8 байт заполнены нулями 00,00,00,00,00,00,00,00
Девятый байт равен количеству клавиш, которые необходимо переназначить + 1, т.е. если надо переназначить 2-е клавиши, то девятый байт равен 03
10, 11, 12 так же заполнены нулевыми значениями
Далее необходимо определить шестнадцатеричные скан-коды клавиш, которые вы хотите переназначить. Допустим, вы хотите изменить функцию клавиши Right Ctrl на Caps Lock. Находим код Right Ctrl - 1D E0 и код Caps Lock - 3A 00. Теперь дописываем в параметр "Scancode Map" сначала значение Caps Lock, а затем значение Right Ctrl.
Затем осталось дописать в конец параметра еще четыре нулевых байта.
Для примера с переназначеним Right Ctrl на Caps Lock параметр должен выглядеть так: 00,00,00,00,00,00,00,00,02,00,00,00,3A,00,1D,E0,00,00,00,00.
Чтобы переназначить более чем одну клавишу, необходимо таким же образом просто добавлять в конец параметра пары кодов клавиш (вначале клавишу "на которую", затем клавишу "с которой"). Например, чтобы переназначить Caps Lock на Left Shift и Left Alt на Backspace одновременно, параметр должен выглядеть так: 00,00,00,00,00,00,00,00,03,00,00,00,2A,00,3A,00,0E,00,38,00,00,00,00,0 0.
Чтобы просто заблокировать клавишу, следует переназначить её на "00,00".
Чтобы изменения вступили в силу, необходимо перезагрузить компьютер. Можно переназначить клавиши и для конкретного пользователя. В этом случае параметр "Scancode Map" следует разместить в ветви HKEY_CURRENT_USER\Keyboard Layout, а для вступлений изменений в силу будет достаточно перелогиниться.
Вот некоторые кода:
e0 1c (Keypad Enter) | 1c (Enter) |
e0 1d (RCtrl) | 1d (LCtrl) |
e0 2a (fake LShift) | 2a (LShift) |
e0 35 (Keypad-/) | 35 (/?) |
e0 36 (fake RShift) | 36 (RShift) |
e0 37 (Ctrl-PrtScn) | 37 (*/PrtScn) |
e0 38 (RAlt) | 38 (LAlt) |
e0 46 (Ctrl-Break) | 46 (ScrollLock) |
e0 47 (Grey Home) | 47 (Keypad-7/Home) |
e0 48 (Grey Up) | 48 (Keypad-8/UpArrow) |
e0 49 (Grey PgUp) | 49 (Keypad-9/PgUp) |
e0 4b (Grey Left) | 4b (Keypad-4/Left) |
e0 4d (Grey Right) | 4d (Keypad-6/Right) |
e0 4f (Grey End) | 4f (Keypad-1/End) |
e0 50 (Grey Down) | 50 (Keypad-2/DownArrow) |
e0 51 (Grey PgDn) | 51 (Keypad-3/PgDn) |
e0 52 (Grey Insert) | 52 (Keypad-0/Ins) |
e0 53 (Grey Delete) | 53 (Keypad-./Del) |
e0 5b (LeftWindow) |
e0 5c (RightWindow) |
e0 5d (Menu) |
Set-1 make/break | Set-2 make/break | |
Power | e0 5e / e0 de | e0 37 / e0 f0 37 |
Sleep | e0 5f / e0 df | e0 3f / e0 f0 3f |
Wake | e0 63 / e0 e3 | e0 5e / e0 f0 5e |
Ну а решение проблемы с клавиатурой будет выглядеть так:
REGEDIT4
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,0b,00,00,00,52,e0,64,00,37,e0,65,00,\ 46,e0,66,00,5b,e0,38,00,38,00,5b,e0,5c,e0,38,e0,38,e0,5c,e0,2e,e0,67,00,30,\ e0,68,00,20,e0,69,00,00,00,00,00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,0b,00,00,00,52,e0,64,00,37,e0,65,00,\ 46,e0,66,00,5b,e0,38,00,38,00,5b,e0,5c,e0,38,e0,38,e0,5c,e0,2e,e0,67,00,30,\ e0,68,00,20,e0,69,00,00,00,00,00
Классная статья! У меня клавиатура модели А1016, клавиши другие, но проблемы те же. Ничего не менял, просто привык к тому что работает. А теперь, прочитав такие тонкости, думаю сделаю всё на свой лад.
ОтветитьУдалитьстатья и правда класнная,но нет файла реестра который можно просто запустить и установить данную клаву?я просто не дружу с реестром...
ОтветитьУдалитьзаранее спасибо,ответ буду ждать по адресу bss-01@mail.ru
...ничего не понимаю: во-первых в реестре по указанному адресу вообще отсутствовал данный параметр, во-вторых после его добавления, согласно вашим рекомендация, и перезагрузки ничего не изменилось...
ОтветитьУдалитькакие будут соображения по этому поводу???
з.ы.: winXP_SP3, keyb точно такой как на картинке
HELP!
> ничего не понимаю
ОтветитьУдалитьКак раз сейчас на xp sp3, попробуй скачать и запустить файл реестра, по ссылке в конце статьи, там линк был маленько битый, сейчас нормальный.
А где можно посмотреть коды,чтобы переназначить клавиши?
ОтветитьУдалитьУ меня клавиатура Apple Wireless Keyboard, то есть она работает через блютус, отсутствуют кнопки делит, номе, а также отдельный блок цифровых клавиш.
Хотелось бы сделать кнопку делит из кнопки открытия диска (она как раз над бэкспейсом), а также добавить кнопки номе, енд, инсерт, принт скрин.
Из свободных кнопок только кнопка fn и кнопка "\/ или в английской раскладке \|" кнопки \/ почему то две, поэтому одна лишняя.
Также по умолчанию в медиаплеере кнопки F7, F8, F9 работают со звуком, а хотелось бы переназначить их на F10, F11, F12, где указаны соответствующие вторые значения. Ну и добавить управление воспроизведением на кнопки F7, F8, F9; добавить управление подсветкой экрана на кнопки F1, F2.
Возможно ли это сделать путем манипуляций с реестром, либо же только специальные программы нужны?
На кнопку открытия диска у меня не получилось ничего назначить, а в остальном можно поиграться с утилиткой Sharp Keys http://www.randyrants.com/sharpkeys/ она выполняет все тоже самое, но в относительно понятном интерфейсе.
ОтветитьУдалитьЗдравствуйте! Скажите Сергей, а будет ли работать F8-F12 в Биос (выбор устройства при загрузке с которого грузиться и т.д.)
ОтветитьУдалить> будет ли работать F8-F12 в Биос
ОтветитьУдалитьУ меня работают
А для Windows 7 reg файл действителен?
ОтветитьУдалить> А для Windows 7 reg файл действителен?
ОтветитьУдалитьДа.
Добрый день!
ОтветитьУдалитьУ меня блютуз клавиатура apple. Установлена OC Win 7. Возможно ли на кнопку F3 повесить функцию переключения окон (Win+Tab). Если да, то как это сделать.
Сергей добрый вечер..
ОтветитьУдалитьа можно ли попросить сделать рег файл со всеми изменениями кроме: оставить на месте клавиши ALT и CMD... как есть. заранее огромное спасибо.
и еще вопрос. как откатиться к старым значениям?
если придется ставить win клавиатуру
большое спасибо за помощь. под Win7 параметра Scancode Map у меня в реестре не существовало совсем, но его можно просто создать. все работает прекрасно.
ОтветитьУдалитьАлександр писал:
ОтветитьУдалитьСергей добрый вечер..
а можно ли попросить сделать рег файл со всеми изменениями кроме: оставить на месте клавиши ALT и CMD...как есть.
Сам тоже склоняюсь к такому решению:
достаточно из регфайла удалить:
5b,e0,38,00,38,00,5b,e0,5c,e0,38,e0,38,e0,5c,e0,
поясню
5b,e0,38,00, lalt>lwin
38,00,5b,e0, lwin>lalt
5c,e0,38,e0, ralt>rwin
38,e0,5c,e0, rwin>ralt
спасибо!
ОтветитьУдалитьСегоднгя подрубил клаву Apple Keyboard (MB110) с цифровым блоком клафиш!
ОтветитьУдалитьWindows 7 x86, винда сама нашла все дрова и все поставила, клава работает отлично, с привычной для РС клавиатур раскладкой (странно, читал посты, и обычно все это делали вручную, а у меня все стало автоматом!!))), но одно "НО"! Хотелось бы добавить лишь клавишу "PrintScreen", например на клавишу F13... больше ничего не интересует и не тревожит... Как это сделать?
В ветке реестра по данному пути "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout", имеются еще 2 папки...
"DosKeybCodes" и "DosKeybDs"...
Где и что менять - не пойму...
Подскажите, как назначить ПринтСкрин на клавишу F13 ?
И еще одно, а это нормально, что встроенный в клавиатуру ХАБ не работает с Флэхами? Система, при вставлении флэшки пишет, что не хватает мощности и энергии, что можно сделать с этим?
> Хотелось бы добавить лишь клавишу
ОтветитьУдалить> "PrintScreen", например на клавишу F13
как то так, ну или с помощью Sharp Keys (http://www.randyrants.com/sharpkeys/)
REGEDIT4
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,02,00,00,00,37,e0,64,00,00,00,00,00,00
> И еще одно, а это нормально, что встроенный в
> клавиатуру ХАБ не работает с Флэхами? Система,
> при вставлении флэшки пишет, что не хватает
> мощности и энергии, что можно сделать с этим?
Да, на PC у меня ни разу не заработал хаб, клавиатура же определилась как клавиатура, а не дополнительный набор усб портов, как это происходит в случае с хабом ;)
http://www.youtube.com/watch?v=s8kVWy8Qf7A&list=FL0Ny_7BwLdIsf1ob_Dt2zfQ&feature=mh_lolz
Удалитьувеличил питание на порте и говорит что работает- пока не разбирался но у него работает все с виду нормально.
день добрый Сергей!
ОтветитьУдалитькак настроить F19 на Калькулятор. с помощью Sharp Keys
Добрый вечер Сергей !
ОтветитьУдалитьПодскажите пожалуйста как определить + на прибавление громкости(громче) в wmp, а - в уменьшении(тише)?
Добрый Вечер! Помогите, пожалуйста... Программа, которая некоторые клавиши меняет у меня не работает. Пожалуйста, пропишите в файлике Управление музыкой на F16.17.18 и переключение треков на F13.14.15 Помогите, пожалуйста. Подарили клавиатура а разобраться так и не смог
ОтветитьУдалитьСпасибо большое! Наконец-то Ctrl-Break работает и на эппл-клавиатуре!
ОтветитьУдалитьДобрый день Сергей! Я нашел решение как кнопку Fn замапать как Insert и вернуть остальные клавиши типа ScrollLock. Поищите в гугле драйвер hidfalum. Специально для нашей родненькой клавы написан.
ОтветитьУдалитьВ Вашем примере после восьми пустых байт отсутствует значение количества байт. вместо этого вы написали "ob" тогда становится непонятным алгоритм
ОтветитьУдалитьИ второй вопрос к знающим , а как быть если нужно переназначить клавиатурное сочетание например Lctrl+shift+p на клавишу Space ? Для большинства пультов это более чем актуально
ОтветитьУдалитьСергей, а можете подсказать как на клавишу, открывающую сидиром, запрограммировать переход в спящий режим?
ОтветитьУдалитьКак откорректировать выложенный вами реестр???
Если не сложно, можно на почту ty333@мэйл точка ру
В windows 8.1 не работает...
ОтветитьУдалитьВ windows 8 работало нормально, обновил до 8.1 и перестало работать... Сделайте пожалуйста куп файл под windows 8.1
УдалитьТупанул, все работает, просто копьютер не перезагрузил...
УдалитьБольшое спасибо!!! Очень полезная статья.
ОтветитьУдалитьну, вообще-то, Hidfalum driver всё делает еще лучше - в том смысле, что Fn клавиша работает нормально как Insert и не "бесполезна" (как написано в этой статье)
ОтветитьУдалитьСпасибо!!!!
УдалитьВсе работает, а как откатать обратно? Не понравилось(
ОтветитьУдалитьПоддерживаю последний вопрос!! Как откатиться назад? Выложите файл пож-та!
ОтветитьУдалитьРебят помогите завести еще USB порты cбоку
ОтветитьУдалитьне чего не понял
ОтветитьУдалитьБудьте добры, подскажите как сделать Break на F15, клавиатурой пользуюсь, PrtScreen настроил, все остальные ваши твики не нужны.
ОтветитьУдалитьобновите ссылку
ОтветитьУдалитьПожалуйста, подскажите, с помощью Hidfalum driver можно настроить PrtScreen и где его можно скачать?
ОтветитьУдалитьSergey Lagovskiy: Apple Keyboard + Windows >>>>> Download Now
ОтветитьУдалить>>>>> Download Full
Sergey Lagovskiy: Apple Keyboard + Windows >>>>> Download LINK
>>>>> Download Now
Sergey Lagovskiy: Apple Keyboard + Windows >>>>> Download Full
>>>>> Download LINK RF