Inicializar un archivo DLL

 

Para obtener la documentación más reciente de Visual Studio 2017 RC, consulte Documentación de Visual Studio 2017 RC.

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 compilar. Si no necesita agregar código de inicialización o de finalización, no tiene que hacer nada específico al compilar el archivo DLL. En la tabla siguiente se indica dónde debe agregar código para inicializar el archivo DLL.

Tipo de archivo DLLDónde debe agregarse el código de inicialización y de finalización
Archivo DLL estándarEn las funciones InitInstance y ExitInstance del objeto CWinApp del archivo DLL.
Archivo DLL de extensiónEn la función DllMain generada por el Asistente para archivos DLL de MFC.
Archivo DLL que no está basado en MFCEn 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.

Archivos DLL en Visual C++

Mostrar: