Функция RegisterClassExA (winuser.h)
Регистрирует класс окна для последующего использования в вызовах функции CreateWindow или CreateWindowEx .
Синтаксис
ATOM RegisterClassExA(
[in] const WNDCLASSEXA *unnamedParam1
);
Параметры
[in] unnamedParam1
Тип: const WNDCLASSEX*
Указатель на структуру WNDCLASSEX . Перед передачей в функцию необходимо заполнить структуру соответствующими атрибутами класса.
Возвращаемое значение
Тип: ATOM
Если функция выполняется успешно, возвращаемое значение представляет собой атом класса, который однозначно идентифицирует регистрируемого класса. Этот атом может использоваться только функциями CreateWindow, CreateWindowEx, GetClassInfo, GetClassInfoEx, FindWindow, FindWindowEx и UnregisterClass , а также методом IActiveIMMap::FilterClientWindows .
Если функция выполняется неудачно, возвращается нулевое значение. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.
Комментарии
Если вы регистрируете класс window с помощью RegisterClassExA, приложение сообщает системе, что окна созданного класса ожидают сообщений с текстовыми или символьными параметрами для использования кодировки ANSI; Если вы регистрируете его с помощью RegisterClassExW, приложение запрашивает, чтобы система передала текстовые параметры сообщений в юникоде. Функция IsWindowUnicode позволяет приложениям запрашивать характер каждого окна. Дополнительные сведения о функциях ANSI и Юникода см. в разделе Соглашения о прототипах функций.
Все классы окон, регистрируемые приложением, отменяются при завершении его работы.
Никакие классы окон, зарегистрированные библиотекой DLL, не регистрируются при выгрузке библиотеки DLL. Библиотека DLL должна явно отменять регистрацию своих классов при выгрузке.
Примеры
Пример см. в разделе Использование оконных классов.
Примечание
Заголовок winuser.h определяет RegisterClassEx как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора UNICODE. Сочетание использования псевдонима, не зависящий от кодировки, с кодом, не зависящим от кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | winuser.h (включая Windows.h) |
Библиотека | User32.lib |
DLL | User32.dll |
Набор API | ext-ms-win-ntuser-windowclass-l1-1-0 (появилось в Windows 8) |
См. также раздел
Основные понятия
Справочные материалы