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


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

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

Синтаксис

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 (include Prcomoem.h)