Здравствуйте Denis, Вы писали:
D>Здравствуйте!
D>надо написать компонент(COM DLL) который будет загружаться в приложение и записывать в лог все загрузки/выгрузки DLL'к в течении жизни процесса. И проблема в том что я не могу найти функцию которая позволяла бы поставить хук на загрузку/выгрузку DLL. Если SetWindowsHookEx, то не пойму с каким параметром.
Вообще-то хуки тут не помогут

А загрузку Dll можно отслеживать, запустив процесс как отлаживаемый (флаг DEBUG_PROCESS в CreateProcess) и проверяя, что возвращает WaitForDebugEvent. Так что тут не компонент нужен, а exeшник (в некотором роде отладчик), который приложение запускать будет.
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.
Здравствуйте, Sergey, Вы писали:
S>Здравствуйте Denis, Вы писали:
D>>Здравствуйте!
D>>надо написать компонент(COM DLL) который будет загружаться в приложение и записывать в лог все загрузки/выгрузки DLL'к в течении жизни процесса. И проблема в том что я не могу найти функцию которая позволяла бы поставить хук на загрузку/выгрузку DLL. Если SetWindowsHookEx, то не пойму с каким параметром.
S>Вообще-то хуки тут не помогут
А загрузку Dll можно отслеживать, запустив процесс как отлаживаемый (флаг DEBUG_PROCESS в CreateProcess) и проверяя, что возвращает WaitForDebugEvent. Так что тут не компонент нужен, а exeшник (в некотором роде отладчик), который приложение запускать будет.
Можно пропатчить загруженный код LoadLibrary. Можно свой фильтр-драйвер сделать. Только все это геморройно.
С уважением,
Александр Федин.
ОГО ВСПЛЫЛО =)))))))))))))))))))))))))))))))
A>Можно пропатчить загруженный код LoadLibrary. Можно свой фильтр-драйвер сделать. Только все это геморройно.
A>С уважением,
A>Александр Федин.
Я так и сделал, перехватывал LL.
... << RSDN@Home 1.1.3 stable >>