次の方法で共有


FlushPrinter 関数

FlushPrinter 関数は、一時的な状態からバッファーをクリアするために、プリンターにバッファーを送信します。

構文

BOOL FlushPrinter(
  _In_  HANDLE  hPrinter,
  _In_  LPVOID  pBuf,
  _In_  DWORD   cbBuf,
  _Out_ LPDWORD pcWritten,
  _In_  DWORD   cSleep
);

パラメーター

hPrinter [in]

プリンター オブジェクトへのハンドル。 これは、以前の WritePrinter 呼び出しでプリンター ドライバーによって使用されたものと同じハンドルである必要があります。

pBuf [in]

プリンターに書き込まれるデータを含むバイト配列へのポインター。

cbBuf [in]

pBuf が指す配列のサイズ (バイト単位)。

pcWritten [out]

プリンターに書き込まれたデータのバイト数を受け取る値へのポインター。

cSleep [in]

プリンター ポートへの I/O 行をアイドル状態にしておく時間 (ミリ秒単位)。

戻り値

関数が成功すると、戻り値は 0 以外になります。

関数が失敗した場合は、0 を返します。

注釈

注意

これはブロック関数または同期関数であり、すぐには返されない場合があります。 この関数が返す速度は、アプリケーションの作成時に予測が困難なネットワーク状態、プリント サーバーの構成、プリンター ドライバーの実装要因などの実行時の要因によって異なります。 ユーザー インターフェイスとの対話を管理するスレッドからこの関数を呼び出すと、アプリケーションが応答しなくなる可能性があります。

FlushPrinter は、 WritePrinter が失敗し、プリンターが一時的な状態のままになっている場合にのみ呼び出す必要があります。 たとえば、ジョブが中止され、プリンター ドライバーが一部の生データをプリンターに部分的に送信すると、プリンターが一時的な状態になる可能性があります。

FlushPrinter では、印刷スプーラーが対応するプリンター ポートにジョブをスケジュールしないアイドル期間を指定することもできます。

要件

要件
サポートされている最小のクライアント
Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー
Windows 2000 Server [デスクトップ アプリのみ]
ヘッダー
Winspool.h (Windows.h を含む)
ライブラリ
Winspool.lib
[DLL]
Winspool.drv

関連項目

印刷

印刷スプーラー API 関数

WritePrinter