перехват методов
От: GoldFinch  
Дата: 04.11.08 11:28
Оценка:
Есть длл, которая экспортирует методы, надо их перехватить (сплайсингом).
Чтобы их перехватить написана функция InstallHook:
— принимает адрес оригинального метода и адрес перехватчика
— возвращает адрес по которому перехватчик должен вызвать оригинальный метод.
Соответсвенно возникают два вопроса:
1) Как импортировать метод, не вызывая его?
Для того чтобы перехватить функцию, ее вызывать не надо, надо только передать ее адрес установщику перехвата.
А если импортируемая функция не вызывается, компилятор ее не импортирует.
2) Как передать в функцию указатель на любой метод?
Функции-установщику перехвата безразлично какой прототип у функции, адрес которой ей передается, кроме того она должна уметь перехватывать функции адреса которых получаются динамически.

05.11.08 13:58: Перенесено модератором из 'C/C++' — Кодт
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.