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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 23.06.2011, 23:24   #1
Boris-Britva
Пользователь
 
Регистрация: 01.11.2010
Сообщений: 14
Восклицание Эмуляция нажатий клавиш в играх

Как симулировать нажатие клавиатуры в играх. Обычными методами keybd_event, SendMessage, PostMessage не получается.
Я думаю либо проблема в скан кодах, либо общение с клавиатурой идет через DirectInput.
Подскажите что-нибудь.
Boris-Britva вне форума Ответить с цитированием
Старый 24.06.2011, 00:20   #2
romlo
Пользователь
 
Аватар для romlo
 
Регистрация: 21.06.2010
Сообщений: 49
По умолчанию

А что за игра?
romlo вне форума Ответить с цитированием
Старый 24.06.2011, 02:31   #3
dacorp
Пользователь
 
Регистрация: 12.06.2010
Сообщений: 48
По умолчанию

Цитата:
Сообщение от Boris-Britva Посмотреть сообщение
Как симулировать нажатие клавиатуры в играх. Обычными методами keybd_event, SendMessage, PostMessage не получается.
Я думаю либо проблема в скан кодах, либо общение с клавиатурой идет через DirectInput.
Подскажите что-нибудь.
Присоединяюсь к вопросу, что за игра, и хотелось бы уточнить, какие клавиши вы пытаетесь нажимать?

К примеру, если взять онлайн-игру Perfect World, чтобы послать сэмулировать нажатие, необходима маленькая подготовка, как, например - разморозка окна. Когда окно не активно (свёрнуто), чтобы оно получило нажатие, его надо разморозить, путём цикличного изменения значения в памяти процесса. Также не стоит забывать, что при использовании PostMessage иногда после wmKeyDown, необходимо убирать "палец с клавиши" (wmKeyUp).
dacorp вне форума Ответить с цитированием
Старый 24.06.2011, 07:56   #4
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

с PW, там все просто, оно через сообщения пашет и итого оно через keybd_event/SendInput ловится.
но DirectInput то иное дело.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 24.06.2011, 13:54   #5
dacorp
Пользователь
 
Регистрация: 12.06.2010
Сообщений: 48
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
с PW, там все просто, оно через сообщения пашет и итого оно через keybd_event/SendInput ловится.
но DirectInput то иное дело.
Я не профессионал, не могли бы Вы пояснить немного, о чём конкретно вышесказано, если можно с кодом
dacorp вне форума Ответить с цитированием
Старый 24.06.2011, 14:54   #6
Boris-Britva
Пользователь
 
Регистрация: 01.11.2010
Сообщений: 14
По умолчанию

Игра - R2 Online, делал бота, но после нового обновления не работает старыми методами.
Да и вообще очень в многих играх не получается сэмулировать.
Boris-Britva вне форума Ответить с цитированием
Старый 24.06.2011, 15:20   #7
JTG
я получил эту роль
Старожил
 
Аватар для JTG
 
Регистрация: 25.05.2007
Сообщений: 3,694
По умолчанию

Ну вот тут есть инфа про перехват GetDeviceState, правда довольно старая
http://forum.madshi.net/viewtopic.php?p=1500
пыщь
JTG вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Эмуляция нажатий клавиш BorisBritva Общие вопросы Delphi 1 01.11.2010 13:09
Эмуляция в играх magros Общие вопросы .NET 6 21.06.2010 07:06
Имитация нажатия клавиш в играх. simtiko Общие вопросы Delphi 2 01.06.2010 15:02
симуляция нажатий клавиш 4321 Общие вопросы Delphi 14 23.10.2008 23:18
отслеживание нажатий клавиш Артэс Win Api 6 14.06.2008 20:02