Inicializar un archivo DLL

Generalmente, el archivo DLL incluye código de inicialización (de asignación de memoria, por ejemplo) que deberá ejecutarse cuando se cargue el archivo DLL. Cuando se utiliza Visual C++, el punto en el que debe agregar código de inicialización para el archivo DLL dependerá del tipo de DLL que vaya a generar. Si no necesita agregar código de inicialización o de finalización, no tiene que hacer nada específico al generar el archivo DLL. En la tabla siguiente se indica dónde debe agregar código para inicializar el archivo DLL.

Tipo de archivo DLL

Dónde debe agregarse el código de inicialización y de finalización

Archivo DLL estándar

En las funciones InitInstance y ExitInstance del objeto CWinApp del archivo DLL.

Archivo DLL de extensión

En la función DllMain generada por el Asistente para archivos DLL de MFC.

Archivo DLL que no está basado en MFC

En una función denominada DllMain proporcionada por el usuario.

En Win32, todos los archivos DLL pueden contener una función de punto de entrada opcional (normalmente denominada DllMain) que se invoca para la inicialización y la finalización. Esto le ofrece la oportunidad de asignar o liberar recursos adicionales cuando sea necesario. Windows llamará a la función de punto de entrada en cuatro situaciones: asociación de proceso, desasociación de proceso, asociación de subproceso y desasociación de subproceso.

La biblioteca en tiempo de ejecución de C proporciona una función de punto de entrada denominada _DllMainCRTStartup, que llama a DllMain. En función del tipo de archivo DLL, deberá incluir una función denominada DllMain en el código fuente o utilizar la función DllMain proporcionada por la biblioteca MFC.

¿Qué desea hacer?

¿Qué más desea saber?

Vea también

Conceptos

DLL