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驅動程式會呼叫此方法,並將 pBuf 和 pdevobj 設定為 NULL,而 cbBuf 設定為 0,以偵測外掛程式是否實作此函式。 外掛程式應該會傳回S_OK,以指出它實作這個方法,而且應該傳回E_NOTIMPL否則傳回。
這個方法應該會報告寫入至 spooler 之 WritePrinter 函式的位元元組數目,而此函式會以 wwwWritten 為單位。 零的值沒有特殊意義;錯誤必須透過傳回的 HRESULT 回報。
方法是 IPrintOemUni2::WritePrinter
選擇性的。 如果轉譯外掛程式實作這個方法,外掛程式的 IPrintOemUni::GetImplementedMethod 方法必須在收到 “WritePrinter” 作為輸入時傳回S_OK。
規格需求
需求 | 值 |
---|---|
目標平台 | 桌面 |
標頭 | prcomoem.h (包括 Prcomoem.h) |