AppendPrinterNotifyInfoData 関数 (winsplp.h)
印刷スプーラーの AppendPrinterNotifyInfoData 関数は、指定したPRINTER_NOTIFY_INFO_DATA構造体の内容を指定したPRINTER_NOTIFY_INFO構造体に追加します。
構文
BOOL AppendPrinterNotifyInfoData(
[in] PPRINTER_NOTIFY_INFO pInfoDest,
PPRINTER_NOTIFY_INFO_DATA pDataSrc,
DWORD fdwFlags
);
パラメーター
[in] pInfoDest
呼び出し元が指定した PRINTER_NOTIFY_INFO 構造体へのポインター。
pDataSrc
呼び出し元が指定した PRINTER_NOTIFY_INFO_DATA 構造体へのポインター。
fdwFlags
呼び出し元が指定したフラグ。 次のフラグが定義されています。
PRINTER_NOTIFY_INFO_DATA_COMPACT
設定すると、関数は、指定された PRINTER_NOTIFY_INFO_DATA 構造体の 型、Field、および Id メンバーを調べます。 すべてが PRINTER_NOTIFY_INFO_DATA 構造体配列の既存の要素と一致する場合、既存の要素は指定された要素で上書きされます。 一致するものが見つからない場合、関数は指定した構造体を配列の末尾に追加します。
戻り値
操作が成功した場合、関数は TRUE 返します。 それ以外の場合、関数は FALSE 返します。 呼び出し元は、GetLastError 呼び出すことによってエラー コードを取得できます。
備考
印刷プロバイダーの RefreshPrinterChangeNotification 関数は、最初に配列とそれに関連付けられているPRINTER_NOTIFY_INFO構造体にストレージを割り当てるために、最初に RouterAllocPrinterNotifyInfo 呼び出した後、PRINTER_NOTIFY_INFO_DATA 構造体配列を設定するために必要な回数 AppendPrinterNotifyInfoData を呼び出す必要があります。
PRINTER_NOTIFY_INFO_DATA_COMPACT フラグが設定されているかどうかに基づいて、関数は、指定した PRINTER_NOTIFY_INFO_DATA 構造体を構造体配列の末尾に追加するか、既存の配列要素を上書きします。 構造体が追加されると、関数は PRINTER_NOTIFY_INFO 構造体の Count メンバーをインクリメントします。
AppendPrinterNotifyInfoData 、指定した PRINTER_NOTIFY_INFO 構造体でPRINTER_NOTIFY_INFO_DISCARDED フラグが設定されていることが検出された場合、関数はすべてのPRINTER_NOTIFY_INFO_DATA構造体をクリアし、エラー コードをERROR_OUT_OF_STRUCTURESに設定します。
pInfoDataSrcに null 指定した場合、AppendPrinterNotifyInfoData 指定した PRINTER_NOTIFY_INFO 構造体にPRINTER_NOTIFY_INFO_DISCARDEDフラグを設定し、すべての PRINTER_NOTIFY_INFO_DATA 構造体をクリアして、エラー コードをERROR_OUT_OF_STRUCTURESに設定します。
(PRINTER_NOTIFY_INFO_DISCARDED フラグの詳細については、Windows SDK ドキュメントの FindNextPrinterChangeNotification の説明を参照してください)。
詳細については、「プリンター変更通知 をサポートするを参照してください。
必要条件
要件 | 価値 |
---|---|
ターゲット プラットフォーム の | デスクトップ |
ヘッダー | winsplp.h (Winsplp.h を含む) |
ライブラリ | Spoolss.lib |
DLL | Spoolss.dll |
関連項目
RefreshPrinterChangeNotification
RouterAllocPrinterNotifyInfo の