Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.03.14;
Скачать: [xml.tar.bz2];

Вниз

Delphi6 + DLL   Найти похожие ветки 

 
PSERG   (2002-02-26 07:00) [0]

Как я выяснил на практике, разработка DLL в D6 претерпела существенные изменения. Например, если в библиотеке находится окно, то хэндл апликэйшена передавать в длл уже не нужно, все работает само-собой(причем прекрасно). Но! Я на DLL_PROCESS_ATTACH создаю объект, и на DLL_PROCESS_DETACH разрушаю его. Дак вот, как я заметил DLL_PROCESS_DETACH не возникает никогда!(хоть зафрякайся).
Вопрос, КАК БЫТЬ? Мне нужен объект в области глобальных данных длл, создается от без проблемм, как убить его?


 
Fellomena   (2002-02-26 10:33) [1]

Попробуй отобразить свой объект в память (по средствам механизма отображения файлов в память).
Т.е. можно его хранить в области, которую Win32 использует под файл подкачки. Адресс: $FFFFFFFF или DWORD(-1)
А когда тебе надо - просто закрывать отображение.
Но как может не работать PROCESS_DETACH ума не приложу, у меня всроде всё ok, тоже на Delphi6 перешла 8)


 
drpass   (2002-02-26 11:00) [2]

У меня тоже все работает. А ты случаем не забыл перебросить адрес входной функции dll в переменную DllProc?


 
PSERG   (2002-02-26 16:39) [3]

Делаю так!
...
procedure DLLEntryPoint(dwReason: DWord);
begin
case dwReason of
DLL_PROCESS_ATTACH: DM:=TDM.Create(nil);
DLL_PROCESS_DETACH: DM.Free;
end;
end;
...
begin
DllProc:=@DLLEntryPoint;
DLLEntryPoint(DLL_PROCESS_ATTACH);
end.

Следил отладчиком, когда делаю FreeLibrary то в DLLEntryPoint даже не попадаю.



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

Форум: "Основная";
Текущий архив: 2002.03.14;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.004 c
4-43233
Evgeny
2002-01-15 06:49
2002.03.14
Виртуальный выбор в TreeView


3-42965
Илья Лу.
2002-02-15 15:07
2002.03.14
Суммирование с условием


7-43196
Andersen
2001-08-07 01:38
2002.03.14
Как самому написать VXD/SYS драйвер и без DDK это возможно?


3-42960
KIR
2002-02-15 03:56
2002.03.14
Закладки


14-43179
Tess
2002-01-31 20:52
2002.03.14
Про потоки ... как то они у меня непараллельно работают





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский