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

Вниз

DLL_PROCESS_DETACH / DLL_PROCESS_ATTACH   Найти похожие ветки 

 
AlexandrR   (2002-09-04 22:51) [0]

Привет всем!
У меня проблема.
Переопределяю я DLLProc и пытаюсь ловить subj. И вроде делаю стандартно, но все-таки ничего не ловится. DllEntryPoint вызывается, но со значениями где-то ~1000-2000.
Вот кусок кода:
procedure DLLEntryPoint(dwReason: Integer); stdcall;
var hThread:THandle;
thrID:Cardinal;

begin
case dwReason of
DLL_PROCESS_ATTACH: Begin // On load
DLL_PROCESS_DETACH: Begin// On UnLoad
End;
end;
end;

/////////////////////////////////////////////////////////////////

begin
DLLProc:= @DLLEntryPoint;
DLLEntryPoint(DLL_PROCESS_ATTACH);
end.

Делаяю на VC++ - все работает как надо


 
Almaz ©   (2002-09-05 02:04) [1]

Убери stdcall в объявлении процедуры DLLEntryPoint.

Удачи.


 
Ученик ©   (2002-09-05 08:37) [2]

>Almaz © (05.09.02 02:04)
И от меня спасибо, угороздало же меня скопировать из той ветки в "Полезное" :-)


 
Ученик ©   (2002-09-05 09:37) [3]

>Almaz © (05.09.02 02:04)
И от меня спасибо, угораздило же меня скопировать из той ветки в "Полезное" :-)

p.s опечатки, сорри



 
Старый Паскалист   (2002-09-05 10:47) [4]

В качестве DllEntryPoint в паскале всегда выступает
ф-я _InitLib из sysinit.pas.
А DllProc - процедура, к-рую она из себя вызывает.

Причём так как DllProc назначается в рантайме (когда ДЛЛ уже загружена), то DLL_PROCESS_ATTACH ты никогда через DllProc не поймаешь.


 
Digitman ©   (2002-09-05 11:06) [5]

факт вызова блока инициализации модуля вполне можно интерпретировать как DLL_PROCESS_ATTACH или DLL_THREAD_ATTACH (в зависимости от код.потока, вызвавшего LoadLibrary : в случае основного - DLL_PROCESS_ATTACH , в случае дополнительного - DLL_THREAD_ATTACH)


 
AlexandrR   (2002-09-05 22:20) [6]

Всем спасибо!



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

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

Наверх




Память: 0.47 MB
Время: 0.015 c
3-50632
ShuraGrp
2002-08-22 17:33
2002.09.16
DBRestore ??


3-50612
denimas
2002-08-20 15:17
2002.09.16
Без BDE


14-50931
Net
2002-08-21 12:47
2002.09.16
Кодировка и NMSMTP


1-50777
Fog
2002-09-06 12:08
2002.09.16
не Dll и даже не EXE


1-50740
Borys
2002-09-02 19:07
2002.09.16
Видимость переменных