Эмуляция нажатия клавиш в приложении под управлением DirectX - Visual Basic .NET

Узнай цену своей работы

Формулировка задачи:

Доброго времени. Перелопатил кучу инфы, и слегка запутался. Задача - клацнуть клавишей в приложении под управлением DirectX Простой короткий код, половина которого работает, половина нет:
Почитал вот эти источники (и еще кучу других):Имитация нажатия клавиши Tab в стороннем приложении (игре)http://visualbasic.happycodings.com/api-and-miscellaneous/code38.html[ссылка на форум] Пришел к выводу, что надо получить скэн-код клавиши Q в переменную, скажем, lScan. и поставить во вторую позицию в функцию keybd_event:
И все, на этом встрял. MapVirtualKey(VK_Q, 0) - это неправильный код, туда надо передавать вместo VK_Q какой-то код клавиши wCode типа long, а где его взять - хз, и что это вообще такое? Можете мне объяснить, где взять нужный код для клавиши (не byte а long)? Или я вообще не в ту степь залез? и почему эмуляция мышки работает, а аналогичная эмуляция клавиатуры - нет? Во второй приведенной мной ссылке есть метод получения этого кода клавиши, но я его не понимаю, у меня он вообще не работает (VS2010 Ultimate):
У меня подчеркивает cChar (ключевое слово не может использоваться в качестве идентификатора) Вобщем, помогите, пожалуйста, разобраться в каше в моей голове.

Решение задачи: «Эмуляция нажатия клавиш в приложении под управлением DirectX»

textual
Листинг программы
                keybd_event(VK_Q, VK_Q_SCAN, 0, 0) 'нажимаем клавишу Q
                Thread.Sleep(50)' ждем 50 мс
                keybd_event(VK_Q, VK_Q_SCAN, KEYEVENTF_KEYUP, 0) ' отпускаем клавишу Q

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4.2 из 5
Похожие ответы