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


Метод IPrintOemUni2::WritePrinter (prcomoem.h)

Метод IPrintOemUni2::WritePrinter , если он поддерживается, позволяет подключаемым модулем отрисовки записывать все выходные данные, созданные драйвером Unidrv. Если этот метод не поддерживается, выходные данные в противном случае будут отправляться в очередь очереди при вызове API WritePrinter для очереди печати (описано в документации по Microsoft Windows SDK).

Синтаксис

HRESULT WritePrinter(
  PDEVOBJ pdevobj,
  PVOID   pBuf,
  DWORD   cbBuffer,
  PDWORD  pcbWritten
);

Параметры

pdevobj

Указатель на структуру DEVOBJ .

pBuf

Указатель на первый байт массива байтов, содержащего выходные данные, созданные драйвером Unidrv.

cbBuffer

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

pcbWritten

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

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

В случае успешного выполнения этот метод возвращает S_OK. В противном случае этот метод должен возвращать соответствующее значение в возвращенном HRESULT.

Комментарии

Во время DrvEnablePDEV драйвер Unidrv вызывает этот метод, если для pBuf и pdevobj задано значение NULL, а для cbBuf — значение 0, чтобы определить, реализует ли подключаемый модуль эту функцию. Подключаемый модуль должен возвращать S_OK, чтобы указать, что он реализует этот метод, и должен возвращать E_NOTIMPL в противном случае.

Этот метод должен сообщать о количестве байтов, записанных в функцию WritePrinter очереди очереди в pcbWritten. Нулевое значение не имеет особого смысла; об ошибках необходимо сообщать с помощью возвращенного HRESULT.

Метод IPrintOemUni2::WritePrinter является необязательным. Если подключаемый модуль отрисовки реализует этот метод, метод IPrintOemUni::GetImplementedMethod должен возвращать S_OK при получении "WritePrinter" в качестве входных данных.

Требования

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