
Hotkey Helper 1.4

Скриншот программы Hotkey Helper
Небольшая программа-помощник для программистов. Показывает коды нажатых клавиш, значения параметров wParam и lParam сообщений WM_KEYDOWN, WM_KEYUP, WM_CHAR, WM_SYSKEYDOWN, WM_SYSKEYUP, WM_UNICHAR, WM_APPCOMMAND (мультимедийные клавиши), WM_DEADCHAR и WM_SYSDEADCHAR (умляуты, акуты, ударения и подобные модификаторы), результаты работы функций GetKeyState и GetAsyncKeyState с переключателями *Lock и клавишами-модификаторами, а также коды горячих клавиш из поля msctls_hotkey32, "сырой" ввод с клавиатуры и информацию о физических устройствах ввода. Предусмотрен режим работы с юникодом и ANSI. Программа написана для личных нужд, но может быть пригодится кому-нибудь еще.
Просмотров: 3523 | Комментариев: 30

Внимание! Статья опубликована больше года назад, информация могла устареть!
Комментарии
Отзывы посетителей сайта о статье
ManHunter
(05.12.2023 в 00:44):
Версия 1.4. Исправлена очистка очереди сообщений от клавиатуры по всем вкладкам, в raw input добавлена трансляция символов в соответствии с текущей раскладкой и состоянием клавиш-модификаторов. Прочие мелкие изменения и улучшения.

ManHunter
(09.04.2023 в 19:37):
Улучшена работа с DPI, архив обновлен.

ManHunter
(05.05.2022 в 13:56):
Версия 1.3. В отдельную вкладку добавлен выхлоп функций GetKeyState и GetAsyncKeyState для клавиш Alt, Ctrl, Shift, Win, App и переключателей *Lock. Прочие мелкие изменения и доработки.

Anonymous
(25.01.2021 в 17:01):
Выражаю вам огромнейшую благодарность, очень полезная программа

ManHunter
(21.12.2020 в 11:22):
Это противоречит моим принципам публикации. Новая версия выпускается же не ради циферок в заголовке, а включает в себя все лучшее из предыдущих версий плюс что-то новое.

user
(21.12.2020 в 11:17):
Кстати, предложение -
неплохо бы не редактировать всю страницу с выпуском новой версии,
а просто добавлять новую версию, оставляя все прежние.
Еслм в них не было замечено какихіто критичных багов
неплохо бы не редактировать всю страницу с выпуском новой версии,
а просто добавлять новую версию, оставляя все прежние.
Еслм в них не было замечено какихіто критичных багов

ManHunter
(20.12.2020 в 18:37):
Версия 1.2. Юникод и ANSI теперь в одном окне, отдельных программ больше не будет. Добавлен "сырой" ввод, информация об устройствах ввода, много различных изменений и доработок.

ManHunter
(08.10.2020 в 13:49):
Готовится к выпуску новая версия, там будет много интересного.

ManHunter
(21.09.2020 в 07:33):
Версия 1.1. Исправлена ошибка запуска под WinXP, добавлены новые отслеживаемые клавиатурные сообщения. Программа разделена на юникодную и обычную версию, т.к. там коды отличаются, а в одном окне это не отследить.

ManHunter
(23.07.2020 в 06:52):
Мои комментарии принципиально проигнорировал?

имя
(23.07.2020 в 03:46):
Не знаю как и где у вас работает
XP SP3
Hotkey Helper 1.0
Ничего не происходит
Не падает, не выдает никаких ошибок, просто тупо не запускается
XP SP3
Hotkey Helper 1.0
Ничего не происходит
Не падает, не выдает никаких ошибок, просто тупо не запускается

ManHunter
(22.07.2020 в 19:59):
Александр, основная проблема в том, что способов обработки клавиш далеко не один. Если комбинация клавиш назначается через функцию RegisterHotKey, то это самый простой случай. Достаточно в Hotkey Helper во второй строчке нажать нынешнюю комбинацию, получить ее код, найти в программе место, где этот код назначается через RegisterHotKey, нажать нужную комбинацию, узнать ее код, заменить в программе старый код хоткея на нужный. Если используется какой-то другой метод обработки клавиатуры, то придется копать, копать и еще раз копать.

Александр
(22.07.2020 в 19:46):
Разрешите вопрос по смежной теме?
Как найти и исправить в имеющемся приложении одно сочетание клавиш на другое? Задача у меня вот какая. Есть приложение, в котором я привык работать и есть заученный до автоматизма HotKey. Начиная с определённой версии разработчик сменил сочетание для нужной мне операции на другое и для меня это стало неудобным вывихом пальцев. Разработчику вопрос задавал, но ответа нет никакого. Хочу попробовать пропатчить. Слова Hex,Asm,IDA мне немного знакомы, но, конечно ламер.Подтолкните в нужную сторону.
Как найти и исправить в имеющемся приложении одно сочетание клавиш на другое? Задача у меня вот какая. Есть приложение, в котором я привык работать и есть заученный до автоматизма HotKey. Начиная с определённой версии разработчик сменил сочетание для нужной мне операции на другое и для меня это стало неудобным вывихом пальцев. Разработчику вопрос задавал, но ответа нет никакого. Хочу попробовать пропатчить. Слова Hex,Asm,IDA мне немного знакомы, но, конечно ламер.Подтолкните в нужную сторону.

ManHunter
(22.07.2020 в 11:33):
Скажем так, в некоторых случаях работает, когда в процессы подгружается comctl32.dll. А по-хорошему, по-правильному, без InitCommonControls не работает. Вот тут очень хорошо расписана теория отчего и почему: http://yvs-it.blogspot.com/201...trolsex.html

user
(22.07.2020 в 11:27):
И подтверждаю, да, под WinXP/SP2 сабж работает вполне нормально.

user
(21.07.2020 в 23:14):
Первая версия той примочки тоже реагировала только на WM_KEYxx,
откуда и название программки,
потом пришлось подобавлять реакцию и на другие сообщения.
откуда и название программки,
потом пришлось подобавлять реакцию и на другие сообщения.

ManHunter
(21.07.2020 в 22:46):
user, я не совсем понял в чем гораздость ширины функционала. Что окно реагирует на все подряд сообщения? Ну так тут такой задачи и не стояло.

user
(21.07.2020 в 22:38):
Когда-то делал и себе такую, только попроще,
но с гораздо более широким функционалом:
http://old-dos.ru/dl.php?id=21888
но с гораздо более широким функционалом:
http://old-dos.ru/dl.php?id=21888

X-Wing Top Ace
(21.07.2020 в 09:28):
Ждем багфикса!
Хотя у меня под XPенью и v1.0 нормально запускается, уже на трех машинах погонял.

ManHunter
(20.07.2020 в 23:17):
Забыл InitCommonControls :( Там же используется msctls_hotkey32, а на XP под него надо обязательно инициализировать элементы управления. Совсем расслабился.
В следующей версии выложу исправленный вариант, а то уже надобавлял всякого.
В следующей версии выложу исправленный вариант, а то уже надобавлял всякого.

X-Wing Top Ace
(20.07.2020 в 21:25):
Voffka, это у вас какая-то неправильная XPень. Только что запустил HotkeyHelper у себя, работает нормально (XPень SP3 32-bit).
Посмотрел у сабжа PE'шный заголовок. OS Version: 1.00, Subsystem: 4.00. В импорте вроде как тоже не видать функций из Повисты и новее. Правда, у меня накачены все рантаймы от VC++, может, у вас без них не запускается. Хотя вряд ли, сабж-то на асме написан.
Кстати, досный резидент у меня в консоли XPени тоже запустился. Причем даже без глюков с псевдографикой, рамки нормально выводятся.
Да ну? Где? Я-то написАл "ламер детектед" про ламера, пишущего "На хрюше не работает" о досном резиденте, который, вдобавок, нормально запустился в ее консоли.
ЗЫ "Как раз" пишется через пробел, а не через дефис. Грамотность не только в исходниках нужна, а то напишете "взлАмал" вместо "взломал" - как раз от слова "ламер" и получится.

ManHunter
(20.07.2020 в 17:19):
Гляну вечером дома, что там XP не нравится.

voffka
(20.07.2020 в 17:16):
X-Wing Top Ace, Ламер детектед.
Сабж на xp как-раз и не работает, только в режиме совместимости.
Сабж на xp как-раз и не работает, только в режиме совместимости.

ManHunter
(20.07.2020 в 11:17):
В cmd-сессии под Win7 резидент тоже работает. С глюками в плане псевдографики, но "всплывает" уверенно.

X-Wing Top Ace
(20.07.2020 в 10:26):
Спасибище отдельное, вытянул, будет жить в моем каталоге досных резидентов. И на чудо-диск добавлю.
Ламер детектед. Это же ДОСНЫЙ резидент, он для доски! ;) Для XPени - сабжевая софтина. ;)

имя
(18.07.2020 в 21:16):
На хрюше не работает

ManHunter
(17.07.2020 в 16:17):
Как ни странно, сохранился. И даже работает :)
https://www.upload.ee/files/12...ODE.ZIP.html
https://www.upload.ee/files/12...ODE.ZIP.html

X-Wing Top Ace
(17.07.2020 в 15:50):
А ваш резидент не сохранился? В разделе "Мои программы" не видать...

ManHunter
(17.07.2020 в 14:37):
Я под DOS рисовал резидентную программу, во всплывающем окошке показывался код, скан-код и всякие модификаторы Alt/Ctrl/Shift/*Lock. Консольный вариант тоже рисовал, когда надо было по-быстренькому узнать код.

X-Wing Top Ace
(17.07.2020 в 10:34):
Спасибо! Действительно, пригодится. Для себя тоже писАл нечто подобное (и даже еще под DOS, позже накодил аналог и под XPенью), но с гораздо меньшим функционалом.
Зато скэн-коды отображал. Все и началось с того, что досный KEYRUS обнулял скэн-коды при русской и псевдографической раскладке. Я сначала думал, что это у меня какой-то баг в работе с клавой, вот на коленке и сваял прогу-помощника, которая отображала ASCII и скэн-коды.
Зато скэн-коды отображал. Все и началось с того, что досный KEYRUS обнулял скэн-коды при русской и псевдографической раскладке. Я сначала думал, что это у меня какой-то баг в работе с клавой, вот на коленке и сваял прогу-помощника, которая отображала ASCII и скэн-коды.

Добавить комментарий
Заполните форму для добавления комментария
