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 結構的 TypeFieldId 成員。 如果它們全都符合 PRINTER_NOTIFY_INFO_DATA 結構數位的現有元素,則會使用提供的 元素覆寫現有的專案。 如果找不到相符專案,函式會將指定的結構新增至數位的結尾。

傳回值

如果作業成功,函式會傳回 TRUE。 否則,函式會傳回 FALSE。 呼叫端可以藉由呼叫 GetLastError 來取得錯誤碼。

備註

列印提供者的 RefreshPrinterChangeNotification 函式應該視 PRINTER_NOTIFY_INFO_DATA需要呼叫 AppendPrinterNotifyInfoData,以在先呼叫 RouterAllocPrinterNotifyInfo 以配置數位及其相關聯PRINTER_NOTIFY_INFO結構的記憶體之後。

根據是否已設定PRINTER_NOTIFY_INFO_DATA_COMPACT旗標,函式會將指定的 PRINTER_NOTIFY_INFO_DATA 結構附加至結構陣列的結尾,或覆寫現有的陣列元素。 如果附加 結構,函式會遞增 PRINTER_NOTIFY_INFO 結構的 Count 成員。

如果 AppendPrinterNotifyInfoData 偵測到PRINTER_NOTIFY_INFO_DISCARDED旗標 是在指定的PRINTER_NOTIFY_INFO 結構中設定,則函式會清除所有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 documentation.) 中的 FindNextPrinterChangeNotification 描述

如需詳細資訊,請參閱 支援印表機變更通知

規格需求

需求
目標平台 桌面
標頭 winsplp.h (包含 Winsplp.h)
程式庫 Spoolss.lib
Dll Spoolss.dll

另請參閱

RefreshPrinterChangeNotification

RouterAllocPrinterNotifyInfo