Функция 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 описана в документации по Microsoft Windows SDK. Элемент структуры pName должен иметь тип LPWSTR.
cbBuf
Предоставленное вызывающим объектом значение, представляющее размер (в байтах) буфера, на который указывают pDatatypes.
[out] pcbNeeded
Предоставленный вызывающим объектом указатель на расположение для получения минимального необходимого размера буфера, на который указывает pDatatypes.
[out] pcReturned
Предоставленный вызывающим объектом указатель на расположение для получения количества DATATYPES_INFO_1 структур, возвращаемых в буфере, на который указывают pDatatypes.
Возвращаемое значение
Если операция выполнена успешно, функция должна вернуть значение TRUE. Если операция завершается сбоем, функция должна вызвать SetLastError , чтобы задать код ошибки, а затем вернуть значение FALSE.
Комментарии
Обработчики печати необходимы для экспорта функции EnumPrintProcessorDatatypes . Локальный поставщик печати вызывает функцию во время инициализации. Функция также вызывается, когда приложение вызывает версию очереди той же функции.
Функция должна возвращать массив DATATYPES_INFO_1 структур, каждая из которых указывает на строку, представляющую тип данных. Фактические строки также должны быть включены в буфер после массива структуры. Пример см. в разделе Пример обработчика печати .
Функция должна возвращать количество возвращаемых DATATYPES_INFO_1 структур (т. е. количество поддерживаемых типов данных) в расположении, на которое указывает pcReturned.
Функция должна возвращать минимальный необходимый размер буфера в расположении, на которое указывает pcbNeeded. Если предоставленный буфер слишком мал, функция должна указать значение для pcbNeeded, задать для кода ошибки значение ERROR_INSUFFICIENT_BUFFER и вернуть значение FALSE.
Требования
Требование | Значение |
---|---|
Целевая платформа | Персональный компьютер |
Верхняя часть | winspool.h (включая Winspool.h) |