Partilhar via


Inicializando DLLs não-MFC

Para inicializar DLLs não-MFC, o código-fonte DLL deve conter uma função chamada DllMain. O código a seguir apresenta um esqueleto básico mostrando que a definição de DllMain pode parecer com:

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;
}
Observação:

O Windows SDK documentação para DllEntryPoint afirma que o nome real do que a função de ponto de entrada deve ser especificado no vinculador de linha de comando com a opção /ENTRY.Com o Visual C++, você não precisa usar a opção /ENTRY se o nome da sua função de ponto de entrada é DllMain. Na verdade, se você utilizar a opção /ENTRY e o nome do seu ponto de entrada funcionar algo diferente de DllMain, a biblioteca de time de execução C não irá obter inicializada corretamente.

O que você deseja saber mais sobre?

Consulte também

Conceitos

Inicializando uma DLL