Главная страница
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.056 c
2-1138701837
pavel_guzhanov
2006-01-31 13:03
2006.02.19
Как определить список папок, находящихся внутри заданной папки


2-1138126468
aviseral
2006-01-24 21:14
2006.02.19
Работа с MS Excel


1-1137482024
RDA
2006-01-17 10:13
2006.02.19
Вставка апострофа во всех контролах


15-1138626670
DSKalugin
2006-01-30 16:11
2006.02.19
Обналичка WebMoney


2-1138793071
sergeii
2006-02-01 14:24
2006.02.19
Label ?