Blog. Just Blog

Hotkey Helper 1.4

Версия для печати Добавить в Избранное Отправить на E-Mail | Категория: Мои программы | Автор: ManHunter
Скриншот программы Hotkey Helper
Скриншот программы 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. Программа написана для личных нужд, но может быть пригодится кому-нибудь еще.

Hotkey Helper 1.4Hotkey Helper 1.4

Hotkey.Helper.1.4-PCL.zip (22,772 bytes)


Поделиться ссылкой ВКонтакте
Просмотров: 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
Ничего не происходит
Не падает, не выдает никаких ошибок, просто тупо не запускается
ManHunter (22.07.2020 в 19:59):
Александр, основная проблема в том, что способов обработки клавиш далеко не один. Если комбинация клавиш назначается через функцию RegisterHotKey, то это самый простой случай. Достаточно в Hotkey Helper во второй строчке нажать нынешнюю комбинацию, получить ее код, найти в программе место, где этот код назначается через RegisterHotKey, нажать нужную комбинацию, узнать ее код, заменить в программе старый код хоткея на нужный. Если используется какой-то другой метод обработки клавиатуры, то придется копать, копать и еще раз копать.
Александр (22.07.2020 в 19:46):
Разрешите вопрос по смежной теме?
Как найти и исправить в имеющемся приложении одно сочетание клавиш на другое? Задача у меня вот какая. Есть приложение, в котором я привык работать и есть заученный до автоматизма 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
X-Wing Top Ace (21.07.2020 в 09:28):
ЦитатаЗабыл InitCommonControls :( Там же используется msctls_hotkey32

Ждем багфикса!

Хотя у меня под XPенью и v1.0 нормально запускается, уже на трех машинах погонял.
ManHunter (20.07.2020 в 23:17):
Забыл InitCommonControls :( Там же используется msctls_hotkey32, а на XP под него надо обязательно инициализировать элементы управления. Совсем расслабился.
В следующей версии выложу исправленный вариант, а то уже надобавлял всякого.
X-Wing Top Ace (20.07.2020 в 21:25):
ЦитатаСабж на xp как-раз и не работает

Voffka, это у вас какая-то неправильная XPень. Только что запустил HotkeyHelper у себя, работает нормально (XPень SP3 32-bit).

Посмотрел у сабжа PE'шный заголовок. OS Version: 1.00, Subsystem: 4.00. В импорте вроде как тоже не видать функций из Повисты и новее. Правда, у меня накачены все рантаймы от VC++, может, у вас без них не запускается. Хотя вряд ли, сабж-то на асме написан.

Кстати, досный резидент у меня в консоли XPени тоже запустился. Причем даже без глюков с псевдографикой, рамки нормально выводятся.

ЦитатаX-Wing Top Ace, Ламер детектед.

Да ну? Где? Я-то написАл "ламер детектед" про ламера, пишущего "На хрюше не работает" о досном резиденте, который, вдобавок, нормально запустился в ее консоли.

ЗЫ "Как раз" пишется через пробел, а не через дефис. Грамотность не только в исходниках нужна, а то напишете "взлАмал" вместо "взломал" - как раз от слова "ламер" и получится.
ManHunter (20.07.2020 в 17:19):
Гляну вечером дома, что там XP не нравится.
voffka (20.07.2020 в 17:16):
X-Wing Top Ace, Ламер детектед.
Сабж на 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
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 и скэн-коды.

Добавить комментарий

Заполните форму для добавления комментария
Имя*:
Текст комментария (не более 2000 символов)*:

*Все поля обязательны для заполнения.
Комментарии, содержащие рекламу, ненормативную лексику, оскорбления и т.п., а также флуд и сообщения не по теме, будут удаляться. Нарушителям может быть заблокирован доступ к сайту.
Наверх
Powered by PCL's Speckled Band Engine 0.2 RC3
© ManHunter / PCL, 2008-2025
При использовании материалов ссылка на сайт обязательна
Время генерации: 0.07 сек. / MySQL: 2 (0.0033 сек.) / Память: 4.5 Mb
Наверх