Форум программистов, компьютерный форум CyberForum.ru

Создание бота. Эмуляция клавиатуры, мыши. - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 30, средняя оценка - 4.80
freeba
Неадекват
 Аватар для freeba
1120 / 916 / 88
Регистрация: 02.04.2010
Сообщений: 2,142
Записей в блоге: 2
Завершенные тесты: 2
11.08.2011, 15:06     Создание бота. Эмуляция клавиатуры, мыши. #1
Попросили написать простенький бот для одной корейской онлайн игрушки. Сразу столкнулся с проблемой сабжа - игрушка защищена православным GameGuard'ом и напрочь игнорирует Keybd_event, sendkeys etc. В добавок там используется DirectInput.

Как я понимаю, в этом случае требуется писать опкоды непосредственно в буфер клавиатуры и ждать пока игрушка их проглотит. Учитывая мой уровень навыков системного программирования (чуть отличный от нуля) плохо представляю, как это делается в принципе. Если не жалко просветите примерчиком (язык любой, лишь бы в dll можно было откомпилировать).
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4236 / 2769 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
11.08.2011, 15:19     Создание бота. Эмуляция клавиатуры, мыши. #2
Не знаю, что такое:
Цитата Сообщение от freeba Посмотреть сообщение
грушка защищена православным GameGuard'ом ... В добавок там используется DirectInput.
но может попробовать PostMessage()?
freeba
Неадекват
 Аватар для freeba
1120 / 916 / 88
Регистрация: 02.04.2010
Сообщений: 2,142
Записей в блоге: 2
Завершенные тесты: 2
11.08.2011, 15:21  [ТС]     Создание бота. Эмуляция клавиатуры, мыши. #3
Пробовал. Защита каким то образом отличает программные события от хардварных и или не реагирует или вываливает игрушку с ошибкой Game Hack.

К тому же PostMessage() в виду отложенного выполнения не очень подходит для ботописания. Send лучше, но ни тот ни дргой не работает.
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4236 / 2769 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
11.08.2011, 15:34     Создание бота. Эмуляция клавиатуры, мыши. #4
Тогда можно написать dll для хука на клавитуру. Установить хук и посылать непосредственно из dll сигналы о нажатии клавиши дальше по цепочке хуков. Когда этот сигнал получит игра, она будет думать, что получила действительно сигнал от клавиатуры.
Сам так делать не пробовал, просто однажды на статью наткнулся, где описывался данный метод, вроде как самый лучший из всех возможных.
freeba
Неадекват
 Аватар для freeba
1120 / 916 / 88
Регистрация: 02.04.2010
Сообщений: 2,142
Записей в блоге: 2
Завершенные тесты: 2
11.08.2011, 15:50  [ТС]     Создание бота. Эмуляция клавиатуры, мыши. #5
гм... ссылочку бы.

Добавлено через 9 минут
ЗЫ: вопрос века - сработает ли хук на программное нажатие?

Добавлено через 26 секунд
ЗЗЫ: Ощущаю себя мазохистом.
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4236 / 2769 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
11.08.2011, 16:02     Создание бота. Эмуляция клавиатуры, мыши. #6
Цитата Сообщение от freeba Посмотреть сообщение
гм... ссылочку бы.
К сожалению не могу, говорю же как то случайно наткнулся, стало интересно, прочитал.
Yandex
Объявления
11.08.2011, 16:02     Создание бота. Эмуляция клавиатуры, мыши.
Ответ Создать тему
Опции темы

Текущее время: 14:25. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru