Как проверить, что функция dllmain возвращает false - PullRequest
0 голосов
/ 11 мая 2019

Есть ли способ найти при загрузке cpp dll из exe, что dll переустанавливает false из метода DllMain

Предположим, у меня есть cpp exe и внутренне он пытается загрузить cpp dll, затемесли cpp dll возвращает false из метода DllMain.Есть ли регистрация в eventvwr или из любого инструмента, который мы можем проверить

1 Ответ

2 голосов
/ 11 мая 2019

Если DllMain возвращает false в ответ на DLL_PROCESS_ATTACH, LoadLibrary() возвращает NULL.

Подробнее здесь .

Когда система вызывает функцию DllMain с помощью DLL_PROCESS_ATTACH значение возвращает функцию ИСТИНА, если она успешна, или ЛОЖЬ, если инициализация не удалась. Если возвращаемое значение ЛОЖЬ, когда DllMain вызван, потому что процесс использует функцию LoadLibrary, LoadLibrary возвращает NULL. (Система немедленно вызывает вашу точку входа с DLL_PROCESS_DETACH и выгружает DLL.) Если возвращаемое значение FALSE, когда DllMain вызывается во время инициализации процесса, процесс завершается с ошибкой. Чтобы получить расширенную информацию об ошибках, вызовите GetLastError.

Когда система вызывает функцию DllMain с любым значением, кроме DLL_PROCESS_ATTACH, возвращаемое значение игнорируется.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...