Функция FindWindowExA (winuser.h)
Извлекает дескриптор в окно, имя класса и имя окна которого соответствуют указанным строкам. Функция выполняет поиск дочерних окон, начиная с одного из указанных дочерних окон. Эта функция не выполняет поиск с учетом регистра.
Синтаксис
HWND FindWindowExA(
[in, optional] HWND hWndParent,
[in, optional] HWND hWndChildAfter,
[in, optional] LPCSTR lpszClass,
[in, optional] LPCSTR lpszWindow
);
Параметры
[in, optional] hWndParent
Тип: HWND
Дескриптор родительского окна, дочерние окна которого должны выполняться поиск.
Если hwndParentNULL, функция использует окно рабочего стола в качестве родительского окна. Функция выполняет поиск между окнами, которые являются дочерними окнами рабочего стола.
Если hwndParentHWND_MESSAGE, функция выполняет поиск всех окон только для сообщений.
[in, optional] hWndChildAfter
Тип: HWND
Дескриптор дочернего окна. Поиск начинается с следующего дочернего окна в порядке Z. Дочернее окно должно быть прямым дочерним окном hwndParent, а не только окно потомка.
Если hwndChildAfterNULL, поиск начинается с первого дочернего окна hwndParent.
Обратите внимание, что если оба hwndParent и hwndChildAfterNULL, функция выполняет поиск всех окон верхнего уровня и только для сообщений.
[in, optional] lpszClass
Тип: LPCSTR
Имя класса или атом класса, созданный предыдущим вызовом функции registerClass или RegisterClassEx. Атом должен быть помещен в слово с низким порядком lpszClass; Слово с высоким порядком должно быть равно нулю.
Если lpszClass является строкой, он указывает имя класса окна. Имя класса может быть любым именем, зарегистрированным в RegisterClass или RegisterClassEx, или любым из предопределенных имен классов элементов управления или MAKEINTATOM(0x8000)
. В этом последнем случае 0x8000 является атомом для класса меню. Дополнительные сведения см. в разделе "Примечания" этой статьи.
[in, optional] lpszWindow
Тип: LPCSTR
Имя окна (название окна). Если этот параметр NULL, все имена окон совпадают.
Возвращаемое значение
Тип: HWND
Если функция выполнена успешно, возвращаемое значение является дескриптором окна с указанными именами классов и окон.
Если функция завершается ошибкой, возвращаемое значение равно NULL. Чтобы получить расширенные сведения об ошибке, вызовите GetLastError.
Замечания
Функция FindWindowEx выполняет поиск только прямых дочерних окон. Он не ищет других потомков.
Если параметр lpszWindow не NULL, FindWindowEx вызывает функцию GetWindowText, чтобы получить имя окна для сравнения. Описание потенциальной проблемы, которая может возникнуть, см. в разделе "Примечания" GetWindowText.
Приложение может вызывать эту функцию следующим образом.
FindWindowEx( NULL, NULL, MAKEINTATOM(0x8000), NULL );
Обратите внимание, что 0x8000 является атомом для класса меню. Когда приложение вызывает эту функцию, функция проверяет, отображается ли контекстное меню, созданное приложением.
Заметка
Заголовок winuser.h определяет FindWindowEx как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 2000 Профессиональный [только классические приложения] |
минимальный поддерживаемый сервер | Windows 2000 Server [только классические приложения] |
целевая платформа | Виндоус |
заголовка | winuser.h (включая Windows.h) |
библиотеки |
User32.lib |
DLL | User32.dll |
набор API | ext-ms-win-ntuser-window-l1-1-1 (представлено в Windows 8.1) |
См. также
концептуальные
Справочник