Функция EngQueryPalette (winddi.h)
Функция EngQueryPalette запрашивает у указанной палитры ее атрибуты.
Синтаксис
ENGAPI ULONG EngQueryPalette(
HPALETTE hpal,
ULONG *piMode,
ULONG cColors,
ULONG *pulColors
);
Параметры
hpal
Дескриптор палитры для запроса.
piMode
Указатель на расположение, которое получает режим палитры, как первоначально указано в EngCreatePalette.
cColors
Указывает количество записей в буфере, на которые указывает pulColors . Возвращаемое значение зависит от того, является ли cColors отрицательным .
pulColors
Указатель на буфер, который получает сведения о цвете палитры. Если cColors равно нулю, pulColors может иметь значение NULL.
Возвращаемое значение
Если cColors равно нулю, EngQueryPalette возвращает количество записей палитры, необходимых в буфере, на которые указывает pulColors , чтобы вернуть сведения о цвете палитры. Если cColors не равно нулю, а pulColors — не NULL, EngQueryPalette возвращает количество записей, записанных в буфере, на которые указывает pulColors .
Комментарии
Если режим палитры PAL_BITFIELDS, PAL_RGB или PAL_BGR и буфер, на который указывает pulColors , достаточно велик, pulColors указывает на три маски ULONG, представляющие красные, зеленые и синие цветовые маски палитры.
Если режим палитры PAL_INDEXED и буфер, на который указывает pulColors , достаточно велик, pulColors содержит все 24-разрядные значения RGB, представляющие цвета палитры.
Драйвер должен проверить наличие флага GCAPS_PALMANAGED, чтобы определить, представляют ли цвета фиксированную или изменяемую палитру.
EngQueryPalette предназначен для использования драйверами зеркального отображения, которые должны знать цветовой формат основного дисплея. Драйвер зеркального отображения обычно вызывает эту функцию в своей подпрограмме DrvEnablePDEV .
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Доступно в Windows 2000 и более поздних версиях операционных систем Windows. |
Целевая платформа | Универсальное |
Верхняя часть | winddi.h (включая Winddi.h) |
Библиотека | Win32k.lib |
DLL | Win32k.sys |