Эквивалент LD_PRELOAD для Windows для предварительной загрузки общих библиотек.
-
19-09-2019 - |
Вопрос
Я пытаюсь сделать именно то, что делает LD_PRELOAD, т.е.предварительно загрузить общую библиотеку или файлы DLL в Windows в данную программу, чтобы переопределить определенные функции.
Есть ли LD_PRELOAD
эквивалент для Windows?
Я не имею в виду какие-то конкретные функции.Я просто знаю, что это возможно в Linux, и мне интересно, как можно перегрузить собственную DLL в Windows.
Решение
AppInit_DLL.
http://support.microsoft.com/kb/197571
Но см. также:
AppInit_DLL следует переименовать в Deadlock_Or_Crash_Randomly_DLLs.
https://blogs.msdn.microsoft.com/oldnewthing/20071213-00/?p=24183/
Вы также можете изучить «DLL-инъекцию».Здесь описаны четыре подхода (включая AppInint_DLL):
Не связан с StackOverflow