Главная страница
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.027 c
14-33765
Igor__
2003-08-23 11:01
2003.09.11
Квантизация цветов


3-33452
lex7
2003-08-21 13:27
2003.09.11
ADO SQL


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


14-33740
Zheks
2003-08-25 00:32
2003.09.11
Shape


3-33447
Nikolai_S
2003-08-21 16:35
2003.09.11
Вставка записей в другую базу данных MS Access