Inicjowanie DLL nie MFC
Inicjowanie DLL nie MFC, kodzie źródłowym biblioteki DLL musi zawierać funkcję o nazwie DllMain.Poniższy kod przedstawia podstawowy szkielet, pokazujący jakie definicji DllMain może mieć następującą postać:
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;
}
[!UWAGA]
Windows SDK w dokumentacji DllEntryPoint mówi, że rzeczywista nazwa funkcji punktu wejścia musi określone na linker wiersza polecenia z opcją /ENTRY.W języku Visual C++, nie trzeba użyć opcji /ENTRY, jeśli nazwa funkcji punktu wejścia DllMain.W rzeczywistości, użyj opcji /ENTRY i nazwa punktu wejścia działać coś innych niż DllMain, biblioteka uruchomieniowa c nie uzyskać poprawnie zainicjowane.