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

Вниз

Окончание работы DLL   Найти похожие ветки 

 
pegucka   (2006-01-25 18:03) [0]

Добрый день/вечер/ночь.
Из программы запускается DLL со своими формами. Как из основной программы узнать, когда приложение из DLL закончит свою работу? Например, надо узнать, когда оно закончит свою работу и закончить работу основной программы.
Заранее спасибо.


 
Алхимик ©   (2006-01-25 18:06) [1]

А разве из ДЛЛ запускают приложения?
Всегда считал что функции и процедуры...


 
pegucka   (2006-01-25 18:15) [2]

2Алхимик : очень надеюсь, что Вас устроит формулировка "запускаются функции и процедуры, которые выводят на экран формы".


 
Начинающий10   (2006-01-25 19:13) [3]

Передать в DLL "какой нибудь" Handle, либо адресок процедуры. И посылать сообщение либо вызывать процедурку в DLL при необходимости.


 
WST   (2006-01-28 02:00) [4]


Var h: HWND;
begin
 h := LoadLibrary("Your.dll")
 if h <> 0 then
 begin
   // do some work
   

  FreeLibrary(h); / освободит длл"ку
  Application.Terminate; / авершит приложение
 end;
end;


 
TUser ©   (2006-01-28 09:17) [5]

Создать в длл мьютекс. Или семафор. При выгрузке длл он будет освобожден (уничтожен или уменьшится счетчик ссылок). Тогда выгрузку dll можно будет отловить в твоем приложении в дополнительном потоке с помощью WaitForSingleObject.


 
begin...end ©   (2006-01-28 09:48) [6]

> TUser ©   (28.01.06 09:17) [5]

> Создать в длл мьютекс. Или семафор. При выгрузке длл он
> будет освобожден (уничтожен или уменьшится счетчик ссылок).

Ой.


 
Юрий Зотов ©   (2006-01-28 16:18) [7]

Мьютексы, семафоры, потоки... абалдеть.

ОК, пусть в DLL сидит некое как бы приложение. Тогда среди его форм есть одна, которая по смыслу является главной. То есть, закрытие этой формы означает завершение работы этого как бы приложения.

Код этой формы писал не Пушкин. Его писали мы. Значит, как и было сказано в [3], ничто не мешает нам, например, отослать из ее обработчика OnClose любое сообщение любому окну в EXE. Или вызвать любую callback-функцию из этого же EXE.

Что и будет искомым сигналом. Какие проблемы?



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

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

Наверх




Память: 0.48 MB
Время: 0.026 c
11-1112893795
Димитрий
2005-04-07 21:09
2006.02.19
Ошибка компиляции модуля kol.pas


2-1138553720
SergV
2006-01-29 19:55
2006.02.19
Измирение темпиратуры чипсетов в Delphi


15-1138717831
stone
2006-01-31 17:30
2006.02.19
С Днём рождения! 31 января


2-1138750519
atmospheric
2006-02-01 02:35
2006.02.19
наследование класса


2-1138607660
De
2006-01-30 10:54
2006.02.19
поясните