Inicialización de CRT y DLLMain

Citas:

Del documento "Mejores prácticas para crear archivos DLL"http://download.microsoft.com/download/a/f/7/af7777e5-7dcd-4800-8a0a-b18336565f5b/DLL_bestprac.doc de Microsoft:

"Las DLL a menudo tienen interdependencias complejas que definen implícitamente el orden en que deben cargarse. El cargador de la biblioteca analiza de manera eficiente estas dependencias, calcula el orden de carga correcto y carga las DLL en ese orden".[1]

"(dentro de DLLMain) Use la función de administración de memoria del tiempo de ejecución dinámico C (CRT). Si la DLL CRT no se inicializa, las llamadas a estas funciones pueden hacer que el proceso se bloquee".[2]

Desde MSDN:http://msdn.microsoft.com/en-us/library/988ye33t.aspx

"La función _DllMainCRTStartup hace varias cosas, incluida la llamada _CRT_INIT, que inicializa la biblioteca de tiempo de ejecución C / C ++ e invoca constructores de C ++ en variables estáticas, no locales. Sin esta función, la biblioteca de tiempo de ejecución quedaría en un estado no inicializado ".[3]

"Además de inicializar la biblioteca de tiempo de ejecución C, _DllMainCRTStartup llama a una función llamada DllMain".[4]

Preguntas:

Si su DLL depende de CRT DLL, basado en[1], Las DLL CRT se cargarán primero (se inicializarán primero), así que ¿cómo[2] podría pasar ?

Residencia en[3] y[4], _DllMainCRTStartup llamará a _CRT_INIT que inicializa el CRT, entonces, ¿cómo[2] podría pasar ?

Si un archivo ejecutable carga su DLL mediante "Enlace implícito", se llamará a _DllMainCRTStartup (y DLLMain) de su DLL antes del punto de entrada (mainCRTStartup o WinMainCRTStartup) del archivo ejecutable, basado en[3] - _DllMainCRTStartup llama a _CRT_INIT que inicializa el CRT, y mainCRTStartup también va a inicializar el CRT, entonces, ¿qué pasó realmente con el CRT?

Si su DLL se cargará antes de mainCRTStartup, ¿la llamada a las funciones CRT dentro de DLLMain u otras funciones de exportación es segura o no?

¿Quién inicializará las DLL CRT en realidad?

Respuestas a la pregunta(1)

Su respuesta a la pregunta