Функция RegisterClassEx
Функция RegisterClassEx регистрирует класс окна для последующего использования при вызове функции CreateWindow или CreateWindowEx.
Синтаксис
ATOM RegisterClassEx( CONST WNDCLASSEX* lpwcx ); |
Параметры
lpwcx
[in] Указатель на структуру WNDCLASSEX. Вы должны заполнить структуру соответствующими атрибутами класса перед передачей её в функцию.Возвращаемое значение
Если функция завершается успешно, возвращаемое значение - атом класса, который уникально идентифицирует зарегистрированный класс. Этот атом может использоваться только функциями CreateWindow, CreateWindowEx, GetClassInfo, GetClassInfoEx, FindWindow, FindWindowEx и UnregisterClass и интерфейсным методом IACTIVEIMMAP:: FilterClientWindows.
Если функция завершается ошибкой, возвращаемое значение равняется нулю. Чтобы получить дополнительную информацию об ошибке, вызовите GetLastError.
Замечания
Если Вы регистрируете класс окна, используя функцию RegisterClassExA, приложение сообщает системе, что окна созданного класса предполагают сообщения с текстом или символьными параметрами, которые используют символьный набор ANSI; если Вы регистрируете его, используя RegisterClassExW, приложение требует, чтобы система посылала сообщения с текстовыми параметрами на Unicode. Функция IsWindowUnicode дает возможность прикладной программе запросить характер каждого окна. Для получения дополнительной информации о функциях ANSI и Unicode, смотрите статью Соглашения для прототипов функции.
Все классы окна, которые регистрирует приложение, становятся незарегистрированными, когда класс завершает работу.
Windows 95/98/Me: Все классы окна, зарегистрированные динамически подключаемой библиотекой (DLL), становятся незарегистрированными, когда DLL выгружается.
Windows NT/2000/XP: Ни один класс окна, зарегистрированный DLL, не становиться незарегистрированным, когда DLL выгружается. DLL должна явно отменить регистрацию своего класса, когда она выгружается.
Функция RegisterClassEx завершается ошибкой, если член cbWndExtra или cbClsExtra структуры WNDCLASSEX содержат больше чем 40 байтов.
Функция RegisterClassExW поддерживается Microsoft Layer for Unicode (MSLU). Чтобы использовать эту версию, Вы должны добавить некоторые файлы в ваше приложение, как это изложено в Microsoft Layer for Unicode для систем Windows 95/98/Me.
Пример
Пример, см. в статье Использование классов окна.
Смотри также
Обзор Классы окна, Функции, используемые классами окна, CreateWindow, CreateWindowEx, FindWindow, FindWindowEx, GetClassInfo, GetClassInfoEx, GetClassName, RegisterClass, UnregisterClass, WindowProc, WNDCLASSEX
Размещение и совместимость RegisterClassEx |
|
Windows. NET Server |
Да |
Windows XP |
Да |
Windows 2000 |
Да |
Windows NT |
Да версии 4.0 и выше |
Windows Me |
Да |
Windows 98 |
Да |
Windows 95 |
Да |
Используемая библиотека |
User32.lib |
Заголовочный файл |
|
- объявлено в |
Winuser.h |
- включено в |
Windows.h |
Unicode |
Нет |
Замечания по платформе |
Не имеется |