Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.05.2011, 16:29   #1
awtk
 
Регистрация: 13.05.2011
Сообщений: 3
По умолчанию Коды, посылаемые от кнопок USB клавиатуры

Согласно стандартам(Usage Tables) USB клавиатура имеет свою таблицу соответствия кодов клавишам. Но не на все коды, посылаемые USB HID-Keyboard, приходит WM_KEYDOWN. Как можно в VC++ перехватить коды кнопки, скажем, F16? Или reserved код ?
Спасибо за ответы.
awtk вне форума Ответить с цитированием
Старый 13.05.2011, 19:15   #2
Spawn™Production®
Форумчанин
 
Аватар для Spawn™Production®
 
Регистрация: 06.05.2011
Сообщений: 287
По умолчанию

С F16 вроде никаких проблем быть не должно... коды прописаны в windows.h.
Сразу после отлова сообщения можно воспользоваться функцией GetKeyState и проверить состояние нужной клавиши...
Spawn™Production® вне форума Ответить с цитированием
Старый 14.05.2011, 11:19   #3
f.hump
C/C++, Asm
Участник клуба
 
Аватар для f.hump
 
Регистрация: 02.03.2010
Сообщений: 1,323
По умолчанию

http://msdn.microsoft.com/en-us/libr...(v=VS.85).aspx
f.hump вне форума Ответить с цитированием
Старый 15.05.2011, 21:44   #4
awtk
 
Регистрация: 13.05.2011
Сообщений: 3
По умолчанию

Спасибо за ответы.
Пересмотрю Keyboard Input функции.
Меня смущает, что, посылая от USB HID-Keyboard на PC, код F16(согласно Keyboard(0x07) Usage table), в приложении на PC не приходит
WM_KEYDOWN(отлавливаю GetMessage()). Посылая, скажем, код клавиши 'e', приходит.
И, действительно, F16 прописан в Windows'овском хидере.
...
Device HID-Keyboard у меня со моей прошивкой - могу засылать в комп.
свои коды.
awtk вне форума Ответить с цитированием
Старый 18.05.2011, 11:01   #5
awtk
 
Регистрация: 13.05.2011
Сообщений: 3
По умолчанию

Прояснилось у меня о кнопке F16. Она находится за пределами 101-ной кнопки стандардной клавиатуры, а дескриптор в моей был под 101-у прописан. Это место поменял на 233, и теперь WM_KEYDOWN можно поймать.

Прошу ещё просветить, как посылать из Windows на PC данные в USB Keyboard ?
И может быть ещё о том, как организовать программу виндоусовскую на работу с двумя клавами? Одна USB-шная, другая м.б. и PS/2.
awtk вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
команды посылаемые окном при сворачивании lestor Win Api 8 02.04.2011 23:21
коды клавиатуры Акоб Общие вопросы C/C++ 4 17.02.2011 22:05
как вводить ascii коды с клавиатуры на ноутбуке? ololo-schoolboy Свободное общение 0 06.01.2011 20:30
Сообщения, посылаемые окну JeyKip Общие вопросы C/C++ 0 08.11.2010 10:59
Где посмотреть код кнопок клавиатуры?! R11 Помощь студентам 3 12.04.2010 23:55