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

Вниз

Как имея хендл чужого окна узнать о его закрытии ?   Найти похожие ветки 

 
Пастор   (2004-10-11 23:16) [0]

Как имея хендл чужого окна узнать о его закрытии ?


 
Yanis ©   (2004-10-11 23:21) [1]

Самое простое: проверять существует оно или нет.


 
Пастор   (2004-10-12 09:27) [2]

Самое простое: проверять существует оно или нет.

А как ? Я делал :

repeat
 sleep(10);
until wnd <> FindWindow(nil, "My window");

Работает только в том случае, если окно не меняет заголовка.


 
KSergey ©   (2004-10-12 09:30) [3]

> [2] Пастор   (12.10.04 09:27)

И где же здесь используется хендл? ;)
Можно, думаю, просто ссендить какое-либо сообщение типа WM_GETTEXT или что-то подобное "нейтральное" и проверять возвращаемую ошибку... Хотя, а вдруг успеет создасться окно, которое получит тот же хендл? Маловероятно, конечно...


 
Erik1 ©   (2004-10-12 10:53) [4]

Может попробовать узнать о завершении процесса, если с закрытием окна завершается процес.


 
Юра   (2004-10-12 10:53) [5]

Поставь хук на это окно SetWindowHook. Отлавливай сообщение WM_CLOSE или WM_DESTROY. Callback процедуру хука размести в ДЛЛ, если отслеживаемое окно находится в другом процессе.


 
Ascan   (2004-10-12 11:08) [6]

Пастор, попробуй так:
if IsWindow(hWnd)
 then ... // Существует
 else ... // Нет


 
Lin7   (2004-10-12 11:16) [7]

Функция IsWindow ?


 
Ascan   (2004-10-12 12:05) [8]

Lin7
>> Функция IsWindow ?

Функции для работы с окнами
BOOL IsWindow( HWND hWnd );

Функция определяет, существует ли окно, которое идентифицирует указанный дескриптор.
Если дескриптор идентифицирует существующее окно, то функция возвращает ненулевое значение, а если окно не существует, то - 0.
Рекомендуется использовать данную функцию только для определения существования окон своего приложения. Использование данной функции для определения существования окон других приложений может привести к ошибке программы, т.к. окно определенное как существующее, может быть разрушено своим приложением в следующее мгновенье.

Параметр    Описание
hWnd [in]   Дескриптор окна


Системные требования и поддержка:
Windows NT/2000:  Windows NT 3.1 и выше
Windows 95/98/Me: Windows 95 и выше
Delphi:           Delphi 5 и выше
С++:              Winuser.h; User32.lib


 
Пастор   (2004-10-12 12:12) [9]

Ascan, спасибо. Это то, что нужно.



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

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

Наверх




Память: 0.48 MB
Время: 0.029 c
14-1099241658
VEG
2004-10-31 19:54
2004.11.21
Никто не ставил винт 160-200Гб на старые мат.платы (2000 год)?


6-1094729314
Plaster
2004-09-09 15:28
2004.11.21
Неужели только IPX?


3-1098549975
Серг
2004-10-23 20:46
2004.11.21
Накопление памяти при параметрическом запроосе


3-1098265706
Алексей
2004-10-20 13:48
2004.11.21
В каком направлении копать: аналог client-server для FOX-таблиц?


6-1093911720
Ace Cooper
2004-08-31 04:22
2004.11.21
Передача данных из Делфи в php-скрипт и получение результата.