![]() |
Quote:
|
Quote:
Что в байтовой матрице происходит - надо смотреть. |
Quote:
---------- Post added at 20:42 ---------- Previous post was at 20:41 ---------- А как узнать в глобальном хуке состояние PadEnter? Или у него еще свои коды виртуальных клавиш? |
Quote:
Проверить просто - тестовая программка с хуком есть. Хук вызывается при каждом нажатии, автоповторе и отжатии каждой клавиши, получая её скан-код с битом нажата/отжата. Формат аргументов глобального хука описан здесь: GlobalKeyboardHook. |
Quote:
|
1 Attachment(s)
Quote:
Вот, что она пишет в лог при нажатии и отжатии сначала обычного, а потом дополнительного Enter: Code:
wp[0x100] ; vkCode[0xD] ; scanCode[0x1C] ; flags[0x0]... |
Quote:
Опять, получается, костыли всякие. ---------- Post added at 21:33 ---------- Previous post was at 21:30 ---------- Quote:
Quote:
|
Quote:
|
Quote:
Ну, допустим, сделать перехват клавиши дополнительного энтера в хуке. Куда потом его сувать? Придумывать новый сканкод? Это будет самодеятельность, т.к. эти же сканкоды получают другие приложения. Так же всегда есть задержка между включеним и отключением глобального хука по активизации окна. Можно, конечно, засинхронизироваться, но это все усложненно. |
Quote:
Quote:
Чтобы не пустить нажатие в Windows - хук должен сделать return 1;, а чтобы пропустить - return CallNextHookEx( ghKeyboardHook, nCode, wp, lp ); Кстати - у меня в хук-тесте ошибка, там в CallNextHookEx передаются не оригинальные параметры вызова ( wp и lp ), а переработанные ( wParam и lParam ) - а надо передавать точно те, которые получены хуком. |
| All times are GMT +4. The time now is 02:41. |
Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.