La diferencia entre loadlibrary y loadlibraryex
La principal diferencia entre las dos funciones es que LoadLibraryEx tiene un parámetro adicional dwFlags, que puede configurar algunas opciones al cargar DLL dinámicamente.
En términos generales, LoadLibraryEx no llama a la DLL al cargar la DLL, es decir, DllMain no se ejecutará. De esta manera, incluso si hay un error en la propia DLL, la asignación se realizará correctamente. .
Cuando se carga LoadLibrary, no solo se asigna, sino que también llama y ejecuta DllMain.
Si se confirma que no hay ningún problema con una DLL en sí, pero la carga con LoadLibrary falla y la carga con LoadLibraryEx tiene éxito, en primer lugar, depende de si DllMain ha impuesto ciertas restricciones y, en segundo lugar, si la DLL en sí está vinculado a otras DLL.