Главная страница
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.071 c
3-1098696836
Карелин Артем
2004-10-25 13:33
2004.11.21
Нужен сложный "григ", в котором можно показать связанные таблицы.


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


14-1098581802
Думкин
2004-10-24 05:36
2004.11.21
С днем рождения! 24 октября


3-1098135004
TechnoDreamer
2004-10-19 01:30
2004.11.21
Реструктуризация базы Access 2000


3-1098699289
Zif
2004-10-25 14:14
2004.11.21
Оптимальный поиск...