Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.022 c
14-1099610766
default
2004-11-05 02:26
2004.11.21
Забавная задачка


1-1099547598
InfMag
2004-11-04 08:53
2004.11.21
Запоритсая проблема с конвертом TColor а


1-1099554968
star.ru
2004-11-04 10:56
2004.11.21
типа Graphics32


14-1099051141
Knight
2004-10-29 15:59
2004.11.21
Опишите ваши впечатления от первого общения с VMware...


14-1099256045
Herki
2004-10-31 23:54
2004.11.21
скан определённого IP диапазона на наличие Пабов........




   Наверх