Главная страница
    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.46 MB
Время: 0.048 c
1-1099646621
Ш-К
2004-11-05 12:23
2004.11.21
Поиск элемента множества по его естественному порядку.


1-1098785216
DmiSb
2004-10-26 14:06
2004.11.21
Как убрать колинтитулы при печати из TWebBrowsera ?


3-1098554297
Pirate
2004-10-23 21:58
2004.11.21
Помогите сконвертировать БД из dat-файлов в dbf


14-1099881443
Думкин
2004-11-08 05:37
2004.11.21
С днем рождения! 8 ноября


1-1099663033
Mishenka
2004-11-05 16:57
2004.11.21
Как узнать над каким компонентом находится курсор мыши?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский