Функция DrvSplDeviceCaps (winddiui.h)

Функция DrvSplDeviceCaps в интерфейсе принтера запрашивает у принтера его возможности.

Синтаксис

DWORD DrvSplDeviceCaps(
                  HANDLE   hPrinter,
  [in]            PWSTR    pszDeviceName,
                  WORD     Capability,
  [out, optional] PVOID    pOutput,
                  DWORD    cchBufSize,
  [in, optional]  PDEVMODE pDevmode
);

Параметры

hPrinter

Дескриптор принтера, предоставленный вызывающим абонентом.

[in] pszDeviceName

Предоставленный вызывающим лицом указатель на строку Юникода, содержащую имя принтера.

Capability

Битовый флаг, предоставленный вызывающим абонентом, который указывает возможность запрашивать. (Флаги определены в файле заголовка wingdi.h.) Эта функция не требуется для поддержки всех флагов DC_XXX, но она должна поддерживать флаги, перечисленные в следующей таблице.

Флаг Определение
DC_MEDIAREADY Параметр pOutput указывает на буфер, который функция должна заполнить массивом строковых буферов длиной 64 символа. Каждый элемент массива должен содержать строку, завершающуюся значением NULL, представляющую имя бумажной формы, доступной для использования. Возвращаемое значение функции должно быть числом элементов в возвращаемом массиве. Если pOutput имеет значение NULL, функция должна просто возвращать необходимое количество элементов массива.
DC_PAPERNAMES Параметр pOutput указывает на буфер, который функция должна заполнить массивом строковых буферов длиной 64 символа. Каждый элемент массива должен содержать строку, завершающуюся значением NULL, представляющую имя бумажной формы. Возвращаемое значение функции должно быть числом элементов в возвращаемом массиве. Если pOutput имеет значение NULL, функция должна просто возвращать необходимое количество элементов массива.

[out, optional] pOutput

Предоставленный вызывающим объектом указатель на буфер, который получает предоставленные функцией сведения. Использование буфера зависит от значения параметра Capability . Вызывающий объект отвечает за выделение и освобождение этого буфера.

cchBufSize

Предоставленный вызывающим объектом размер буфера (в символах), на который указывает параметр pOutput .

[in, optional] pDevmode

Предоставленный вызывающим объектом указатель на структуру DEVMODEW , которая описывает текущие характеристики задания печати. Если значение РАВНО NULL, функция должна использовать внутреннюю структуру DEVMODEW драйвера по умолчанию.

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

Возвращаемое значение зависит от параметра Capability . Если capability указывает на возможность, которую драйвер не поддерживает, или если обнаружена ошибка, функция должна вернуть GDI_ERROR.

Комментарии

Описание флагов DC_XXX см . в разделе DrvDeviceCapabilities.

Эта функция должна быть определена в DEF-файле как DrvSplDeviceCaps @ 254, так как диспетчер очереди очереди использует порядковый номер 254 для получения указателя функции драйвера.

Требования

Требование Значение
Целевая платформа Персональный компьютер
Верхняя часть winddiui.h (включая Winddiui.h)

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

DrvDeviceCapabilities