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

Вниз

dllmain vs init-final   Найти похожие ветки 

 
Gu   (2012-01-08 14:59) [0]

есть ли смысл в dll связываться с конструкцией инициализасии в dpr

begin
DllProc := @DllMain;
DllMain (DLL_PROCESS_ATTACH) ;
end;

если проще подключить юнит и инициализацию и завершение библиотеки производить в

initialization
DllInit;
finalization
Dllfinal;
end.

? Имеею ли эти способы большие отличия?


 
Dimka Maslov ©   (2012-01-08 15:17) [1]

Модулю должно быть глубоко индиферрентно, куда он подключён (на всякий случай есть IsLibrary). При этом в системные переменные лезть нужно тогда и только тогда, когда знаешь к чему это приведёт. Секции же initilization и finalization предназначены именно для того, в честь чего они названы. Внимание, вопрос! На кой надо вместо них городить огороды?


 
Rouse_ ©   (2012-01-08 15:27) [2]


> DllProc := @DllMain;
> DllMain (DLL_PROCESS_ATTACH) ;

Данная конструкция применяется только в тех случаях, когда нужно контролировать DllProc. Обычно в случаях хуков, когда необходимо получить уведомление о подгрузке/выгрузке библиотеки. А отправка DLL_PROCESS_ATTACH (при получении которого выполняется некая инициализация) производится из-за того, что данное сообщение уже было отправлено в DllProc до ее подмены на DllMain


 
RWolf ©   (2012-01-08 19:02) [3]

С DllMain связано много тонкостей, лучше её не использовать.



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

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

Наверх




Память: 0.47 MB
Время: 0.007 c
2-1325799180
Gu
2012-01-06 01:33
2012.05.06
опции компилятора


2-1325855150
Anthony
2012-01-06 17:05
2012.05.06
Иконка для приложения


6-1255618941
sloosar
2009-10-15 19:02
2012.05.06
WinInet


9-1190998222
Snoop_4ok
2007-09-28 20:50
2012.05.06
GLScene


15-1325447864
Artem
2012-01-01 23:57
2012.05.06
Где можно скачать простой вычислитель арифметических выражений?