Поделиться через


Функция 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.

Замечания

Если вы регистрируете класс окна с помощью RegisterClassExA, приложение сообщает системе, что окна созданного класса ожидают сообщений с текстовыми или символьными параметрами для использования набора символов ANSI; Если зарегистрировать его с помощью RegisterClassExW, приложение запрашивает, что система передает текстовые параметры сообщений в качестве Юникода. Функция IsWindowUnicode позволяет приложениям запрашивать характер каждого окна. Дополнительные сведения о функциях ANSI и Юникоде см. в соглашениях о прототипах функций.

Все классы окон, регистрируемые приложением, отменяются при завершении работы.

Классы окон, зарегистрированные библиотекой DLL, не регистрируются при выгрузке библиотеки DLL. Библиотека DLL должна явно отменить регистрацию своих классов при выгрузке.

Примеры

Пример см. в разделе Использование классов окон.

Заметка

Заголовок winuser.h определяет RegisterClassEx как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 2000 Профессиональный [только классические приложения]
минимальный поддерживаемый сервер Windows 2000 Server [только классические приложения]
целевая платформа Виндоус
заголовка winuser.h (включая Windows.h)
библиотеки User32.lib
DLL User32.dll
набор API ext-ms-win-ntuser-windowclass-l1-1-0 (представлено в Windows 8)

См. также

концептуальные

CreateWindow

CreateWindowEx

FindWindow

FindWindowEx

GetClassInfo

GetClassInfoEx

GetClassName

Справочник

RegisterClass

UnregisterClass

WNDCLASSEX

классы окон

WindowProc