![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 08.11.2009
Сообщений: 225
|
![]()
Шлю нажатия клавиш в окно игры. И правильно все шлю вроде... и keydbevent юзаю и sendmessage, но игра их обрабатывать не хочет, вернее как не хочет... Игра Dota 2, сделана на движке CS:Source (golden-source) и, соответственно, там тоже есть консоль как в ксе. Так вот, как только я открываю консоль, то все нажатия нормально ловятся, а как только возвращаюсь в сам игровой процесс, то ничего не хочет обрабатывать. Там есть чат (при нажатии Enter), туда тоже норм обрабатываются нажатия.
Подкиньте плиз идею, как игра может проверять реально ли нажата клавиша на клаве и как ее еще можно обмануть? я wm_keydown/up, wm_char пробовал, а результат один и тот же =( |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
возможно что игра применяет сразу два метода для работы с клавой.
один сообщения, а второе это Direct Input. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 08.11.2009
Сообщений: 225
|
![]()
а как бороться?
|
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 16.12.2009
Сообщений: 902
|
![]()
Покажите часть кода, как вы отправляете нажатие, возможно там ошибка.
Небольшой пример: Код:
http://www.programmersforum.ru/showthread.php?t=180777 Последний раз редактировалось Aliens_wolfs; 07.02.2012 в 12:46. |
![]() |
![]() |
![]() |
#5 |
Недо
Участник клуба
Регистрация: 11.08.2011
Сообщений: 1,394
|
![]()
Типичная ошибка начинающих имитаторов клавиатурных нажатий - забывают устанавливать задержки между нажатиями, а также не понимают разницу между нажатием и отпусканием клавиши.
С помощью программирования можно разбогатеть и изменить мир к лучшему (с) Бьерн Страуструп
|
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 08.11.2009
Сообщений: 225
|
![]()
писал выше, что в консоль и в чат в том же окне игры все ловится норм, а в самом игровом процессе ничего не просходит
Последний раз редактировалось Pamparam; 08.02.2012 в 02:42. |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
определение нажатия клавиш | andrew_jr20 | C# (си шарп) | 2 | 12.12.2011 09:48 |
Эмуляция нажатия клавиш | KamiMAN | Общие вопросы Delphi | 5 | 13.03.2011 06:24 |
Имитация нажатия клавиш | Air | Свободное общение | 28 | 04.02.2010 12:38 |
Могут ли обрабатывать нажатия клавиш окна, отличные от активного? | Gorlum | Общие вопросы Delphi | 14 | 27.10.2007 17:28 |