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

Вниз

событие DLL_PROCESS_ATTACH в Dll на Delphi   Найти похожие ветки 

 
sndanil ©   (2003-06-06 10:24) [0]

Собственно это и есть вопрос, а то во первых пример в хелпе не рабочий, во вторых когда его чинишь, то приходит тока DLL_THREAD_ATTACH ... заранее спасибо всем ответившим ...


 
Digitman ©   (2003-06-06 10:33) [1]

покажи код


 
Внук ©   (2003-06-06 10:34) [2]

Все-таки это не вопрос :))


 
sndanil ©   (2003-06-06 10:45) [3]

library Test;
var SaveExit: procedure (Reason: Integer);
procedure LibExit(Reason: Integer);
begin
if Reason = DLL_PROCESS_ATTACH then
begin
end;
SaveExit(Reason);
end;
begin
SaveExit := DllProc; // save exit procedure chain
DllProc := @LibExit; // install LibExit exit procedure
end.


 
sndanil ©   (2003-06-06 10:46) [4]

в общем то подобный код приведен в хелпе в разделе Library initialization code ... тока он даже не компилится :) ...


 
Skier ©   (2003-06-06 10:51) [5]


> тока он даже не компилится :) ...

И что ?! Даже ничего не пишет ?


 
reonid ©   (2003-06-06 11:35) [6]

На самом деле в Дельфях точкой входа в длл является
ф-я Sysinit.@InitLib.
Из неё делается вызов ф-и DllProc.
Но Sysinit.@InitLib вызывается с флагом DLL_PROCESS_ATTACH до того, как будет выполнен инициализационный код ДЛЛ {begin end},
то есть до того, как ты установил свою DllProc.

Решением этой проблемы является непосредственный вызов
процедуры с флагом DLL_PROCESS_ATTACH:

begin
..
SaveExit(DLL_PROCESS_ATTACH);
end.



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

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

Наверх




Память: 0.47 MB
Время: 0.017 c
14-60391
Мазут Береговой
2003-06-02 20:52
2003.06.19
Хотите узнать о мед.обслуживании в США? Читайте здесь:


6-60296
msoftware
2003-04-17 11:14
2003.06.19
Передача STREAM по UDP протоколу


8-60277
АлексКриппер
2003-02-27 09:31
2003.06.19
Как создать MIDI музыку


1-60143
DeScriptor
2003-06-05 21:39
2003.06.19
Проблема с динамическим массивом


6-60310
vi7777
2003-04-12 14:50
2003.06.19
Как очистить память после WebBrowser