Шаг 98 - Функция DLLMain().
Функция входа в DLL:
BOOL WINAPI DllMain
(
HINSTANCE hinstDLL, // указатель на модуль DLL
DWORD fdwReason, // флаг причины вызова функции
LPVOID lpvReserved // зарезервировано
);
Эта функция вызывается в нескольких случаях, причина вызова описана в fdwReason:
DLL_PROCESS_ATTACH новый процесс имеет доступ к DLL
DLL_THREAD_ATTACH новый поток получает доступ к DLL
DLL_THREAD_DETACH последний поток отсоединяется от DLL
DLL_PROCESS_DETACH один из потоков процесса отсоединяется от DLL
Если Вы хотите сами обрабатывать эти вызовы, то код должен быть примерно таким:
BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpReserved)
{
switch( fdwReason ){
case DLL_PROCESS_ATTACH:
break;
case DLL_THREAD_ATTACH:
break;
case DLL_THREAD_DETACH:
break;
case DLL_PROCESS_DETACH:
break;
}
return TRUE;
}
Предыдущий Шаг | Следующий Шаг | Оглавление By Artem.
Используются технологии uCoz
|