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を返す必要があります。
このメソッドは、pcbWritten でスプーラーの WritePrinter 関数に書き込まれたバイト数を報告する必要があります。 0 の値は特別な意味を持たない。エラーは、返された HRESULT を介して報告する必要があります。
メソッドは IPrintOemUni2::WritePrinter
省略可能です。 レンダリング プラグインがこのメソッドを実装する場合、プラグインの IPrintOemUni::GetImplementedMethod メソッドは、"WritePrinter" を入力として受け取ったときにS_OKを返す必要があります。
要件
要件 | 値 |
---|---|
対象プラットフォーム | デスクトップ |
Header | prcomoem.h (Prcomoem.h を含む) |