Compartir a través de


Inicializar archivos DLL que no están basados en MFC

Para inicializar archivos DLL que no están basados en MFC, el código fuente del archivo DLL debe contener una función denominada DllMain. El código siguiente presenta una estructura básica que muestra la posible apariencia de la definición de DllMain:

BOOL APIENTRY DllMain(HANDLE hModule, 
                      DWORD  ul_reason_for_call, 
                      LPVOID lpReserved)
{
    switch( ul_reason_for_call ) {
    case DLL_PROCESS_ATTACH:
    ...
    case DLL_THREAD_ATTACH:
    ...
    case DLL_THREAD_DETACH:
    ...
    case DLL_PROCESS_DETACH:
    ...
    }
    return TRUE;
}

Nota

En la documentación de Windows SDK para DllEntryPoint, se indica que el nombre real de la función de punto de entrada debe especificarse en la línea de comandos del vinculador con la opción /ENTRY. En Visual C++ no necesita utilizar la opción /ENTRY si el nombre de la función de punto de entrada es DllMain. De hecho, si utiliza la opción /ENTRY y asigna a la función de punto de entrada un nombre distinto de DllMain, la biblioteca en tiempo de ejecución de C no se inicializará correctamente.

¿Qué más desea saber?

Vea también

Conceptos

Inicializar un archivo DLL