次の方法で共有


ReplyPrinterChangeNotification 関数 (winsplp.h)

印刷スプーラーの ReplyPrinterChangeNotification 関数を使用すると、印刷プロバイダーは、通知ハンドルに関連付けられている印刷キュー イベントのスプーラーのデータベースを更新し、印刷キュー イベントが発生したことをクライアントに通知できます。

構文

BOOL ReplyPrinterChangeNotification(
                  HANDLE hPrinter,
                  DWORD  fdwChangeFlags,
  [out, optional] PDWORD pdwResult,
  [in, optional]  PVOID  pPrinterNotifyInfo
);

パラメーター

hPrinter

呼び出し元が指定したハンドル。 このハンドルは、印刷プロバイダーの FindFirstPrinterChangeNotification 関数への hNotify 入力として以前に受信されている必要があります。

fdwChangeFlags

1 つ以上の呼び出し元が指定したPRINTER_CHANGE_プレフィックス付きフラグ。Microsoft Windows SDK ドキュメントの FindNextPrinterChangeNotification の説明記載されています。

[out, optional] pdwResult

随意。 NULL しない場合は、指定された情報を更新した結果を示すスプーラー指定のPRINTER_NOTIFY_INFOプレフィックス付きフラグを受け取ります。

[in, optional] pPrinterNotifyInfo

随意。 PRINTER_NOTIFY_INFO構造体の呼び出し元指定アドレス (Windows SDK ドキュメントで説明)。 新しい通知情報が追加されていない場合は、NULL できます。

戻り値

操作が成功した場合、関数は TRUE 返します。 それ以外の場合、関数は FALSE 返します。 呼び出し元は、GetLastError 呼び出すことによってエラー コードを取得できます。

備考

ポーリングをサポートしていない印刷プロバイダー (findFirstPrinterChangeNotificationを参照) は、プロバイダーの FindFirstPrinterChangeNotification 関数で受信したPRINTER_CHANGE_プレフィックス付きフラグによって表されるイベントが発生したことをスプーラーに通知する必要があります。 イベントが発生すると、印刷プロバイダー ReplyPrinterChangeNotification を呼び出して、イベントをスプーラーに通知し、イベントに関連付けられている情報を提供できます。 スプーラーは、通知ハンドルごとにこのイベント情報を追跡し、アプリケーションが FindNextPrinterChangeNotification (Windows SDK ドキュメントで説明) 呼び出すときにアプリケーションに情報を配信します。

印刷プロバイダーが ReplyPrinterChangeNotification 呼び出すときは、fwdFlags でPRINTER_CHANGE_プレフィックス付きフラグを設定するか、PRINTER_NOTIFY_INFO構造体を返すために pPrinterNotifyInfo 使用して発生したイベント 識別する必要があります。 (Windows SDK ドキュメントの FindFirstPrinterChangeNotification に関する Windows SDK ドキュメントの説明に記載されているフラグではなく、FindNextPrinterChangeNotificationの説明に記載されているフラグ使用してください)。

ReplyPrinterChangeNotification 呼び出すと、スプーラーは印刷キュー イベントが発生したことをクライアント アプリケーションに通知します。 これは、プロバイダーが pPrinterNotifyInfo NULL 提供した場合でも発生します。 クライアントに通知を受け取ることなく、印刷キューの変更のスプーラーのレコードを更新するには、PartialReplyPrinterChangeNotificationを使用します。 PartialReplyPrinterChangeNotification を複数回呼び出してスプーラーのデータベースを更新してから、ReplyPrinterChangeNotification を呼び出して、変更が発生したことをクライアントに通知するのが一般的です。

詳細については、「プリンター変更通知 をサポートするを参照してください。

必要条件

要件 価値
ターゲット プラットフォーム デスクトップ
ヘッダー winsplp.h (Winsplp.h を含む)
ライブラリ Spoolss.lib
DLL Spoolss.dll

関連項目

FindFirstPrinterChangeNotification

PartialReplyPrinterChangeNotification