Я работаю над приложением (DLL), которое регистрирует определенные вызовы WIN32, используя Detours. Он внедряется в целевое приложение, которое проходит фильтр. Он должен полностью регистрировать каждый вызов приложения, начиная с первой инструкции в точке входа приложения.
Сейчас я ищу способ заставить мое приложение (которое всегда работает) вводить DLL как можно быстрее, желательно, чтобы целевое приложение не выполняло никаких других вызовов.
Есть ли способ добиться этого?
Вы могли бы использовать Раздел реестра AppInit_DLLs загрузить DLL в процесс. DLL загружается во время DLL_PROCESS_ATTACH
из User32.dll
, Для обычных приложений это должно происходить до запуска любого кода приложения.
Имейте в виду, что хотя AppInit_DLLs следует переименовать в Deadlock_Or_Crash_Randomly_DLLs.
Насколько я знаю, в Windows нет простого способа сделать это.
Ваши варианты: