Отправка данных ввода с клавиатуры через сокет с использованием С++

Я пытаюсь создать приложение для удаленной клавиатуры с помощью WinSock2.

В настоящее время я использую sendInput для регистрации события нажатия клавиши, когда символ входит через сокет. Это прекрасно работает при написании текстовых документов, но не при игре в видеоигры, поскольку для завершения определенного действия часто требуется нажатие клавиши.

Проблема в том, что я не уверен, в каком формате я должен отправить событие keyup, чтобы я мог отличить его от события keydown в моем коде.

Я попытался добавить строку в массив символов, который отправляется через сокет, чтобы я мог идентифицировать ключ, но это очень медленно и по какой-то причине работает только изредка.

Любые предложения о том, как я должен это сделать, будут оценены.


person diederik    schedule 05.07.2016    source источник
comment
Поскольку вы пишете как клиентскую, так и серверную часть, формат проводного протокола целиком и полностью зависит от вас.   -  person Sam Varshavchik    schedule 06.07.2016


Ответы (1)


Эта проблема была решена. Причина, по которой он был неточным, заключалась в том, что он отправлял слишком много ключевых событий.

Я исправил это с помощью простого сна на 100 мс.

person diederik    schedule 06.07.2016