Inicializando DLLs não-MFC
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 diz que o nome real da função de ponto de entrada deve ser especificado na linha de comando com a opção de /ENTRY o vinculador de.Com o Visual C++, você não precisará usar a opção /ENTRY se o nome da sua função de ponto de entrada é DllMain.Na verdade, se você usar a opção de /ENTRY e o nome do seu ponto de entrada funcionar algo diferente de DllMain, a biblioteca de tempo de execução c não será inicializada corretamente. |
O que você deseja saber mais sobre?
Função de ponto de entrada da biblioteca de vínculo dinâmico (SDK do Windows)
O comportamento de biblioteca de tempo de execução c e _DllMainCRTStartup