Благодарю.

говорит:

Он не должен вызывать функцию LoadLibrary или LoadLibraryEx (или функцию, которая вызывает эти функции), поскольку это может создать циклы зависимости в порядке загрузки DLL. Это может привести к использованию DLL до того, как система выполнит свой код инициализации.

Я пытался позвонитьLoadLibrary от DllMain и ничего не произошло.

Единственная проблема, которую я вижу, заключается в том, что загруженная DLL будет использовать функции в моей DLL до того, как будет выполнена остальная часть моей DllMain.

Почему я не должен вызывать LoadLibrary в DllMain?

РЕДАКТИРОВАТЬ:

Хорошо, я понял, что не должен вызывать LoadLibrary в DllMain только потому, что долженверить MSDN, как и другие верующие (я видел там кое-что неправильное, но я тоже должен их забыть).
И потому что что-то может случиться в более новых версиях Windows (хотя там ничего не изменилось за последние десять лет).

Но может ли кто-нибудь показать код, который будет воспроизводить что-то плохое, что происходит, когдаLoadLibrary называется в DllMain? В любой существующей ОС Windows?
Не просто вызов одной функции инициализации синглтона внутри другой, ноLoadLibrary в DllMain?

Ответы на вопрос(4)

Ваш ответ на вопрос