Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > Вызов процедуры для другого процесса из dll


Автор: drugomu 28.6.2013, 18:14
Здравствуйте.

Есть некоторый процесс, который использует процедуры из dll. Мне нужно имитировать вызов процедуры этим процессом. Я не совсем понимаю, как вызвать нужную процедуру в контексте другого процесса.

Спасибо.

Автор: Dem_max 28.6.2013, 19:37
Цитата

Мне нужно имитировать вызов процедуры этим процессом.


?????????????????
Расшифруй.

Автор: drugomu 28.6.2013, 19:56
Цитата(Dem_max @  28.6.2013,  19:37 Найти цитируемый пост)
Расшифруй.

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

Автор: Dem_max 28.6.2013, 20:20
http://en.wikipedia.org/wiki/Hooking
http://www.xakep.ru/post/55795/
http://www.codeproject.com/Articles/30140/API-Hooking-with-MS-Detours

Автор: akizelokro 29.6.2013, 18:03
Этически некорректное, но правильное решение заключается в том, чтобы написать dll-ку, или обрабатывающую все вызовы dll-ки от разработчика, или обрабатывающую только часть вызовов, а остальные неренаправляющие от программы к авторской dll (два варианта подмены).
Я бы подумал, что научу плохому, но, скорее всего, эта подмена не даст желаемого результата для изменений логики игры.

Этот ответ добавлен с нового Винграда - http://ru.vingrad.com//object-id51cda87b6ccc19db04000002#findElement_E7045_51cef75e6ccc19d80100131b_0

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)