Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.14;
Скачать: [xml.tar.bz2];




Вниз

Хватаем обращение 


Landgraph   (2001-11-12 14:22) [0]

_КАК_ можно перехватить обращение к библиотеке и выдать свой результат? Например есть веселая библиотека winsock.dll и надо перехватывать _все_ что к ней идет и если нужно выдавать свой ответ, вместо dll"киного.



paul_shmakov   (2001-11-12 16:24) [1]

это называется перехват вызовов к api (api hooking, api hijack). на эту тему очень много материалов в сети. можно и лучше в книжках почитать (у рихтера и matt pietrek). не пишу, как это сделать, потому что вариантов очень много.
самый простой способ: внедрение в адресное пространство процесса своей dll, которая во время своей инициализации правит таблицу импорта процесса и всех подгруженных в него dll, меняя адреса функций winsock на адреса своих функций-перехватчиков.




Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.14;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.71 MB
Время: 0.044 c
4-42619           YUS                   2001-11-14 20:08  2002.01.14  
ListView_GetItemCount , ListView_GetItemText


6-42523           Smart                 2001-10-10 11:27  2002.01.14  
Remote Logoff needed. EXTREMELY URGENT


1-42474           fliz                  2001-12-25 12:55  2002.01.14  
Запись в поток (SaveToStream) перестала работать после переноса проги на Вин2000.


4-42626           shiva1                2001-11-15 18:10  2002.01.14  
и опять хук....


3-42375           Venus                 2001-12-13 11:12  2002.01.14  
DBLookupListBox