![]() |
|
Модераторы: feodorv, GremlinProg, xvr, Fixin |
![]()
|
|
| qknife |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 12.12.2010 Репутация: нет Всего: нет |
Пытаюсь написать клавиатурный эмулятор мыши. Создал глобальный хук на основе WH_KEYBOARD_LL. Все запускается и вроде бы работает, но существует проблема с переключением NumLock. Эмуляция включается/отключается именно этой клавишей, а эмуляция мыши заточена на цифры дополнительной клавиатуры. Поэтому бывают случаи, когда режим эмуляции включен, а NumLock отключена - в результате цифровые кнопки не обрабатываются. Решал проблему так:
1. Завел функцию SetNumLock переключения Намлока (взял с MSDN): она синтезирует 2 keybd_event 2. Пытаюсь при старте программы всегда держать лампочку NumLock включенным. Для этого при старте вызываю принудительный SetNumLock, а в обработчике хука ставлю такой код:
В результате: лампочка успевает переключиться 1 раз, а затем не гаснет. Однако все равно режим эмуляции часто не совпадает с реальным состоянием Намлок В чем может быть трабл? Как добиться, чтобы лампочка всегда мигала, и при этом точно установить нужное состояние Намлока - т.е. при эмуляции, если состояние Намлока переведено на стрелки - включить Намлок Это сообщение отредактировал(а) qknife - 12.12.2010, 18:36 |
|||
|
||||
![]()
|
| Правила форума "C/C++: Системное программирование и WinAPI" | |
|
|
На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы . Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |