Функция GetClassLongPtrW (winuser.h)

Извлекает указанное значение из структуры WNDCLASSEX, связанной с указанным окном.

Примечание Чтобы написать код, совместимый с 32-разрядной и 64-разрядной версиями Windows, используйте GetClassLongPtr. При компиляции для 32-разрядной версии Windows GetClassLongPtr определяется как вызов функции GetClassLong .
 

Синтаксис

ULONG_PTR GetClassLongPtrW(
  [in] HWND hWnd,
  [in] int  nIndex
);

Параметры

[in] hWnd

Тип: HWND

Дескриптор для окна и, косвенно, класса, к которому принадлежит окно.

[in] nIndex

Тип: int

Получаемое значение. Чтобы получить значение из дополнительной памяти класса, укажите положительное отсчитываемое от нуля смещение в байтах извлекаемого значения. Допустимые значения находятся в диапазоне от нуля до количества байтов дополнительной памяти класса, минус восемь; Например, если вы указали 24 или более байтов дополнительной памяти класса, значение 16 будет индексом третьего целого числа. Чтобы получить любое другое значение из структуры WNDCLASSEX , укажите одно из следующих значений.

Значение Значение
GCW_ATOM
-32
Извлекает значение ATOM , однозначно определяющее класс окна. Это тот же атом, который возвращает функция RegisterClassEx .
GCL_CBCLSEXTRA
–20
Извлекает размер (в байтах) дополнительной памяти, связанной с классом .
GCL_CBWNDEXTRA
–18
Извлекает размер (в байтах) дополнительной памяти окна, связанной с каждым окном в классе . Сведения о том, как получить доступ к этой памяти, см. в разделе GetWindowLongPtr.
GCLP_HBRBACKGROUND
–10
Извлекает дескриптор фоновой кисти, связанной с классом .
GCLP_HCURSOR
-12
Извлекает дескриптор курсора, связанного с классом .
GCLP_HICON
-14
Извлекает дескриптор значка, связанного с классом .
GCLP_HICONSM
-34
Извлекает дескриптор небольшого значка, связанного с классом .
GCLP_HMODULE
-16
Извлекает дескриптор модуля, который зарегистрировал класс .
GCLP_MENUNAME
–8
Извлекает указатель на строку имени меню. Строка идентифицирует ресурс меню, связанный с классом .
GCL_STYLE
-26
Извлекает биты стиля класса окна.
GCLP_WNDPROC
-24
Извлекает адрес процедуры окна или дескриптор, представляющий адрес оконной процедуры. Для вызова процедуры окна необходимо использовать функцию CallWindowProc .

Возвращаемое значение

Тип: ULONG_PTR

Если функция выполняется успешно, возвращается запрошенное значение.

Если функция выполняется неудачно, возвращается нулевое значение. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.

Комментарии

Зарезервируйте дополнительную память класса, указав ненулевое значение в элементе cbClsExtra структуры WNDCLASSEX, используемой с функцией RegisterClassEx .

Примечание

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

Требования

Требование Значение
Минимальная версия клиента 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-2 (представлен в Windows 10 версии 10.0.10240)

См. также раздел

Основные понятия

GetWindowLongPtr

Справочные материалы

RegisterClassEx

SetClassLongPtr

WNDCLASSEX

Классы окон