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

Вниз

PostMessage   Найти похожие ветки 

 
Tornado ©   (2004-05-13 10:36) [0]

Закрываю окно чужого приложения таким образом:

PostMessage(FindWindow(nil, "32Bit - DirStat"), WM_QUIT, 0, 0)

Дело в том что это чужое приложение выполняет некие действия, а мое приложение периодически шлет ему такое сообщение на закрытие и чужое приложение закроется при помощи этого сообщения только тогда когда оно закончит свою работу. Когда работа этого приложения заканчивается то оно закрывается, все хорошо, НО вместе с ним закрывается и мое приложение :) PostMessage выполняется в отдельном потоке.


 
sniknik ©   (2004-05-13 10:45) [1]

попробуй так
hndl:= FindWindow(nil, "32Bit - DirStat");
if hndl <> 0 then PostMessage(hndl, WM_QUIT, 0, 0)


 
Tornado ©   (2004-05-13 11:08) [2]

>>> sniknik ©   (13.05.04 10:45) [1]

спасибо все получилось, о возник еще вопрос: как отследить когда чужая программа закрылась? например выдать в этот момент сообщение?


 
Семен Сорокин ©   (2004-05-13 11:09) [3]

Tornado ©   (13.05.04 11:08) [2]
как отследить когда чужая программа закрылась?

так вот же подсказали в [1]
if hndl <> 0 then
 ..
else
// закрылась


 
sniknik ©   (2004-05-13 11:18) [4]

> else
> // закрылась
или не открывалась никогда. для исключения такого варианта думаю надо "взводить" какуюнибудь переменную при найденом и после анализировать ее.
hndl:= FindWindow(nil, "32Bit - DirStat");
if hndl <> 0 then begin
 PostMessage(hndl, WM_QUIT, 0, 0);
 bol:= true; //оно работало!
end else
 if bol ... // закрылась



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

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

Наверх




Память: 0.47 MB
Время: 0.111 c
3-1084621861
VVV
2004-05-15 15:51
2004.06.06
SQL


14-1085131447
blackman
2004-05-21 13:24
2004.06.06
На 22 мая


1-1085250870
Боян Георгиев
2004-05-22 22:34
2004.06.06
Проблем с рекурсии


11-1074953692
puky
2004-01-24 17:14
2004.06.06
Преобразование Unix времени в строку


3-1084854673
AVP_opck
2004-05-18 08:31
2004.06.06
как сделать чтоб поле calculated один раз расчиталось запомнило