Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.11;
Скачать: CL | DM;

Вниз

DLL_DETACH   Найти похожие ветки 

 
JS   (2003-08-29 11:06) [0]

Как в DLL-проекте отработать деаттач dll-файла?

Заранее благодарен.


 
Skier ©   (2003-08-29 11:11) [1]

см. ExitProc + DLL_PROCESS_DETACH

P.S. Кстати, уже выяснилось что здесь может иметь место ошибка Borland-a
в модуле System.


 
Digitman ©   (2003-08-29 11:14) [2]


> Как в DLL-проекте отработать деаттач dll-файла


а кто тебя заставляет его обрабатывать ?


 
KSergey ©   (2003-08-29 11:19) [3]

Если верить Тейксерре с Печеко, то для этого надо написать примерно следующее (исп. глобальная переменная DllProc из какого-то модуля, искать не охота из какого). По этому поводу пример у них такой приведен (я несколько сократил, все набивать лень):

library Dll1
uses
sysutils, windows, classes;

procedure DllEntryPoint (dwR: DWord);
begin
case dwR of
DLL_PROCESS_ATTACH: ...
DLL_PROCESS_DEATTACH: ...
DLL_THREAD_ATTACH: ...
DLL_THREAD_DEATTACH: ...
end;
end;

begin
// сначала назначим процедуру
DllProc := @DLLEntryPoint;
// теперь вызовем эту процедуру для отображения того, что DLL присоеденена к процессу
// т.к. в первый раз этого не происходит - процедура еще не назначена и вместо этого вызывается 1 раз блок begin/end.
DllEntryPoint(DLL_PROCESS_ATTACH);
end.


Комментарии - из книги. Курсивный - мой.
За опечатки извиняюсь, думаю понятно что к чему.



Страницы: 1 вся ветка

Текущий архив: 2003.09.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.012 c
1-33629
muravey
2003-08-31 14:41
2003.09.11
TCombobox


1-33567
Support1
2003-08-28 19:23
2003.09.11
- Проблема с компонентом


7-33819
MW Programs
2003-06-24 17:32
2003.09.11
Windows XP


1-33620
R
2003-09-01 08:24
2003.09.11
Открытие веток реестра


1-33634
lord
2003-08-30 22:36
2003.09.11
а что рекурсия в потоке не работает ?