共用方式為


IPrintOemUni2::WritePrinter 方法 (prcomoem.h)

如果支援,IPrintOemUni2::WritePrinter 方法可讓轉譯外掛程式擷取 Unidrv 驅動程式所產生的所有輸出數據。 如果不支援這個方法,則輸出數據會以呼叫多任務緩衝處理程式的 WritePrinter API 來傳送至多任務緩衝處理器(如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 驅動程式會呼叫此方法,並將 pBufpdevobj 設定為 NULLcbBuf 設為 0,以偵測外掛程式是否實作此函式。 外掛程式應該傳回S_OK,表示它實作這個方法,否則應該傳回E_NOTIMPL。

這個方法應該回報寫入多工作緩衝處理程式之 WritePrinter 函式的位元組數目,。 值為零沒有特殊意義;錯誤必須透過傳回的 HRESULT 回報。

IPrintOemUni2::WritePrinter 方法是選擇性的。 如果轉譯外掛程式實作此方法,外掛程式的 IPrintOemUni::GetImplementedMethod 方法必須在收到 “WritePrinter” 作為輸入時傳回S_OK。

要求

要求 價值
目標平臺 桌面
標頭 prcomoem.h (include Prcomoem.h)