Básicamente lo que está haciendo es establecer la DLL en cuestión para estar en la sección de carga de retraso. No cargará esa DLL hasta que realice una llamada a una función que está en esa DLL.
El enlazador Visual C++ ahora soporta la carga retardada de DLL. Este lo alivia de la necesidad de usar las funciones del SDK de Windows LoadLibrary y GetProcAddress para implementar la carga diferida de DLL.
Antes de Visual C++ 6.0, la única forma de cargar una DLL en tiempo de ejecución era por usando LoadLibrary y GetProcAddress; el sistema operativo cargaría el archivo DLL cuando se cargara el archivo ejecutable o DLL que lo usaba.
A partir de Visual C++ 6.0, el enlazado estático con una DLL, el enlazador proporciona opciones para retrasar cargar el archivo DLL hasta que el programa llama una función en esa DLL.
Una aplicación puede retrasar la carga de una DLL utilizando la opción del vinculador /DELAYLOAD (Delay Load Import) con una función auxiliar (implementación predeterminada proporcionada por Visual C++). La función auxiliar cargará la DLL al ejecutar el tiempo llamando a LoadLibrary y GetProcAddress por usted.
usted debe considerar el retraso de la carga de un archivo DLL si:
Su programa no puede llamar a una función en la DLL.
Es posible que no se invoque una función en el archivo DLL hasta la última parte de la ejecución de de su programa.
La carga diferida de una DLL se puede especificar durante la compilación de ya sea un proyecto .EXE o .DLL. Un proyecto .DLL que demora la carga de de uno o más archivos DLL no debería llamar a un punto de entrada cargado por retraso en Dllmain.
¿Está preguntando cómo funciona el retraso de carga, o cómo puede aplicarlo? – xtofl