Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Оповещение основной программы о выгрузке DLL... [D7, Win2k]


Bes ©   (2004-12-13 21:05:00) 

Есть у меня программа, к ней подгружаются DLL'ки...

как узнать что библиотека загружена, т.е. посылает ли какое либо сообщение библиотека основной программе, а так же при выгрузке библиотеки... т.е. в DLL у меня есть форма.при закрытии которой DLL должа  уведомить основное приложение что она
закрывается... т.е. сделать FreeLibrary. Для
этого я использую процедуру (находящуюся в основной программе а указатель на эту процедуру передал в длл) и гоняю по ней указатель на команды (ну допустим закрытие приложения). Но сыпяться исключения и ошибки... после того как библиотеки я делаю FreeLibrary

попутно вопрос...

как я  понял когда я первый раз гружу библиотеку она сохраняется в памяти (даже после выгрузки).
Но, можно ли ее выгрузить совсем... чтоб ее следы после FreeLibrary вообще не были в системе.

если кто-то понял что мне надо, помогите пжалуста... и заранее спасибо!


Leonid Troyanovsky   (2004-12-13 21:22:00) [1]


> Bes ©   (13.12.04 21:05)  
> если кто-то понял что мне надо, помогите пжалуста... и заранее


Понятно, конечно, dll тут явно лишняя ;)

Ну, а если очень хочется, то можно в OnDestroy послать
условленное сообщение (PostMessage) to Application,
хендл которого положено передавать в библиотеку.
А приложение, получив сообщение в OnMessage, сделает
библиотеке FreeLibrary.

--
С уважением, LVT.


Наверх

Титульная страница Поиск, карта сайта Написать письмо