Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Системное программирование и WinAPI > опредлить наличеие модального окна и закрыть егого


Автор: ano360 1.2.2009, 12:47
Такая задача.
Есть Handle окна(не моего произовдства) иногда у этого окна по таймеру(видимо) появляется модальное диалоговое окно с каким либо сообщением.

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

в MDSN отрыл EndDialog Function для закрытия окна. 
пробовал GetWindow(CasinoHWnd,GW_CHILD) ; но получаю указатель явно не на диалоговое окно, нужное мне.

Автор: Rrader 1.2.2009, 13:02
Находи окно, если возможно, через FindWindow, если невозможно, то через Enum(Thread)Windows.

Для проверки принадлежности найденного окна окну Handle используй GetWindow(hWnd, GW_OWNER)

Для закрытия посылай окну WM_CLOSE.

Автор: ano360 2.2.2009, 01:08
хм. спасибо. попробуем.

а окно диалоговое... ему разьве не надо посылать сообщения MB_OK MB_YES/MB_NO

Автор: 586 2.2.2009, 01:19
Цитата(ano360 @  2.2.2009,  01:08 Найти цитируемый пост)
ему разьве не надо посылать сообщения MB_OK MB_YES/MB_NO

Можно. Если диалог обрабатывает эти сообщения.
Код
SendMessage(hDlg, WM_COMMAND, IDOK, 0);

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)