Как мне перехватить / перенаправить функцию в DLL (скажем, CreateThread
из Kernel32.dll), загруженной в текущий процесс?
(я неиметь контроль над тем, какие фрагменты кода вызывают CreateThread
, поэтому я не могу просто вместо кода иметь другой код.)
Язык не имеет большого значения;Я предполагаю, что C / C ++ был бы лучшим выбором для этого.
Обновление:
Я забыл упомянуть: я не ищу решениякоторые требуют объединения дополнительных библиотек в мою программу;Я искал ручной способ перехвата (например, переписав адрес функции), не для использования внешней библиотеки для этого.
Но благодаря тем, кто упомянул внешнюю библиотеку;извините, я не говорил этого раньше.