|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
||||
|
||||
Передача параметров в DLL
Всем Здравствуйте! Есть такой вопрос. Есть моя длл-ка которая инжектируется в другой процесс. Так вот как мне передать параметры в процедуру (например reset(par1,par2:word), в длл-ке она есть), из своей программы?
|
#2
|
||||
|
||||
Как вариант - при инжекте зарезервировать до/после инжект-кода место под переменные, и писать туда. После чего выставить там же какой-нибудь флаг. Этот флаг проверять в цикле в ДЛЛ, и как только он выставился - сбросить и вызвать нужную функцию с нужными параметрами. Инжект-код может сказать ДЛЛ-ке свой адрес вызовом какой-нибудь специально для этого сделанной функции в самой DLL.
Только вот нескромный вопрос - ради чего такие сложности? jmp $ ; Happy End! The Cake Is A Lie. |
#3
|
||||
|
||||
А ещё наверное так можно, библиотека ведь загружена, в смысле её копия в памяти уже есть
сначало объявить Код:
... MyProc = procedure reset(par1, par2: word); stdcall; ... Код:
... var proc: MyProc; begin @proc := GetProcAddress(HandleDll{нужно подставить}, 'reset'); proc(par1, par2); ... end; Я не понял Вашего вопроса, но всё же Вам на него отвечу! |
#4
|
||||
|
||||
Цитата:
jmp $ ; Happy End! The Cake Is A Lie. |
#5
|
||||
|
||||
Bargest, а че я до длл-ки не могу добратся через CreateToolhelp32Snapshot? Alegun тут как-то мне не понятно
Цитата:
|
#6
|
||||
|
||||
Цитата:
Я не понял Вашего вопроса, но всё же Вам на него отвечу! |
#7
|
||||
|
||||
Цитата:
Я не понял Вашего вопроса, но всё же Вам на него отвечу! |
#8
|
||||
|
||||
Цитата:
Код:
mov eax, param1 mov edx, param2 call reset Цитата:
Klyaksa, поясни, зачем тебе вообще это надо. Может есть решение проще. И код инжекта приведи. jmp $ ; Happy End! The Cake Is A Lie. Последний раз редактировалось Bargest, 06.04.2014 в 00:36. |