Главная страница
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.055 c
3-1084621861
VVV
2004-05-15 15:51
2004.06.06
SQL


3-1084538267
Alexey
2004-05-14 16:37
2004.06.06
принт


1-1085104450
Slavik_v
2004-05-21 05:54
2004.06.06
Чтото с кодировкой


3-1084514455
half_litre
2004-05-14 10:00
2004.06.06
Мусор в поле TEXT (Sybase)


1-1085208132
Leaner
2004-05-22 10:42
2004.06.06
Дозапись в PByte