| Форум| Гостевая| Ссылки| Программы| Исходные тексты| Наши партнеры.|
   
| Главная| Рассылки| Услуги| Библиотека| Новости| Авторам| Программистам| Студентам|
delphi c++ assembler
 

Шаг 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
 

Rambler's Top100 Rambler's Top100

©  Adept Design Studio

Используются технологии uCoz