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


Функция EnumPrintProcessorDatatypesA (winspool.h)

Функция обработчика печати EnumPrintProcessorDatatypes перечисляет типы данных, поддерживаемые обработчиком печати.

Синтаксис

BOOL EnumPrintProcessorDatatypesA(
  [in, optional]  LPSTR   pName,
  [in]            LPSTR   pPrintProcessorName,
                  DWORD   Level,
  [out, optional] LPBYTE  pDatatypes,
                  DWORD   cbBuf,
  [out]           LPDWORD pcbNeeded,
  [out]           LPDWORD pcReturned
);

Параметры

[in, optional] pName

Вызывающий указатель на строку, представляющую имя сервера, на котором установлен обработчик печати. Если значение NULL, сервер является локальной системой.

[in] pPrintProcessorName

Вызывающий указатель на строку, представляющую имя обработчика печати.

Level

Вызываемое значение, указывающее тип структур, возвращаемых в буфере, на которые указывает pDatatypes. Это значение должно иметь значение 1, указывающее, что структура DATATYPES_INFO_1.

[out, optional] pDatatypes

Вызывающий указатель на буфер для получения массива DATATYPES_INFO_1 структур, за которым следует набор символьных строк, представляющих имена типов данных. Структура DATATYPES_INFO_1 описана в документации по пакету SDK для Microsoft Windows. Элемент структуры pName должен иметь тип LPWSTR.

cbBuf

Вызываемое значение, представляющее размер буфера, на который указывает pDatatypes.

[out] pcbNeeded

Указатель, предоставленный вызывающим объектом, в расположение для получения минимального требуемого размера буфера, на который указывает pDatatypes.

[out] pcReturned

Вызывающий указатель на расположение для получения количества структур DATATYPES_INFO_1, возвращаемых в буфере, на который указывает pDatatypes.

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

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

Замечания

Процессоры печати необходимы для экспорта функции EnumPrintProcessorDatatypes. Локальный поставщик печати вызывает функцию во время инициализации. Функция также вызывается, когда приложение вызывает версию spooler той же функции.

Функция должна возвращать массив DATATYPES_INFO_1 структур с каждой структурой, указывающей на строку, представляющую тип данных. Фактические строки также должны быть включены в буфер после массива структуры. Пример см. в примере обработчика печати.

Функция должна возвращать количество возвращаемых DATATYPES_INFO_1 структур (то есть количество поддерживаемых типов данных) в расположении, на которое указывает pcReturned.

Функция должна возвращать минимальный необходимый размер буфера в расположении, на которое указывает pcbNeed. Если предоставленный буфер слишком мал, функция должна указать значение для pcbNeed, задать код ошибки ERROR_INSUFFICIENT_BUFFER и вернуть FALSE.

Требования

Требование Ценность
целевая платформа Настольный
заголовка winspool.h (include Winspool.h)