Функция ReadPrinter

Функция ReadPrinter извлекает данные из указанного принтера.

Синтаксис

BOOL ReadPrinter(
  _In_  HANDLE  hPrinter,
  _Out_ LPVOID  pBuf,
  _In_  DWORD   cbBuf,
  _Out_ LPDWORD pNoBytesRead
);

Параметры

hPrinter [in]

Дескриптор объекта принтера, для которого требуется извлечь данные. Используйте функцию OpenPrinter для получения дескриптора объекта принтера. Используйте формат Printername, Job xxxx.

pBuf [out]

Указатель на буфер, получающий данные принтера.

cbBuf [in]

Размер (в байтах) буфера, на который указывает pBuf .

pNoBytesRead [out]

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

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

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

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

Комментарии

Примечание

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

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

Требования

Требование Значение
Минимальная версия клиента
Windows 2000 Professional [только классические приложения]
Минимальная версия сервера
Windows 2000 Server [только классические приложения]
Заголовок
Winspool.h (включая Windows.h)
Библиотека
Winspool.lib
DLL
Spoolss.dll

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

Вывод на печать

Функции API очереди печати принтера

OpenPrinter