Funzione AppendPrinterNotifyInfoData (winsplp.h)

La funzione AppendPrinterNotifyInfoData di stampa aggiunge il contenuto di una struttura di PRINTER_NOTIFY_INFO_DATA specificata a una struttura di PRINTER_NOTIFY_INFO specificata.

Sintassi

BOOL AppendPrinterNotifyInfoData(
  [in] PPRINTER_NOTIFY_INFO      pInfoDest,
       PPRINTER_NOTIFY_INFO_DATA pDataSrc,
       DWORD                     fdwFlags
);

Parametri

[in] pInfoDest

Puntatore fornito dal chiamante a una struttura PRINTER_NOTIFY_INFO .

pDataSrc

Puntatore fornito dal chiamante a una struttura di PRINTER_NOTIFY_INFO_DATA .

fdwFlags

Flag forniti dal chiamante. Il flag seguente è definito.

PRINTER_NOTIFY_INFO_DATA_COMPACT
Se impostata, la funzione esamina i membri Type, Field e ID della struttura di PRINTER_NOTIFY_INFO_DATA fornita. Se corrispondono a un elemento esistente della matrice di strutture PRINTER_NOTIFY_INFO_DATA , l'elemento esistente viene sovrascritto con l'elemento fornito. Se non viene trovata una corrispondenza, la funzione aggiunge la struttura specificata alla fine della matrice.

Valore restituito

Se l'operazione ha esito positivo, la funzione restituisce TRUE. In caso contrario, la funzione restituisce FALSE. Il chiamante può ottenere un codice di errore chiamando GetLastError.

Commenti

La funzione RefreshPrinterChangeNotification di un provider di stampa deve chiamare AppendPrinterNotifyInfoData come spesso necessario per popolare una matrice di strutture PRINTER_NOTIFY_INFO_DATA , dopo aver prima chiamato RouterAllocPrinterNotifyInfo per allocare l'archiviazione per la matrice e la relativa struttura PRINTER_NOTIFY_INFO associata.

In base al fatto che il flag di PRINTER_NOTIFY_INFO_DATA_COMPACT sia impostato, la funzione aggiunge la struttura di PRINTER_NOTIFY_INFO_DATA specificata alla fine della matrice di struttura o sovrascrive un elemento matrice esistente. Se la struttura viene aggiunta, la funzione incrementa il membro Count della struttura di PRINTER_NOTIFY_INFO.

Se AppendPrinterNotifyInfoData rileva che il flag di PRINTER_NOTIFY_INFO_DISCARDED è impostato nella struttura di PRINTER_NOTIFY_INFO specificata, la funzione cancella tutte le strutture PRINTER_NOTIFY_INFO_DATA e imposta il codice di errore su ERROR_OUT_OF_STRUCTURES.

Se viene specificato NULL per pInfoDataSrc, AppendPrinterNotifyInfoData imposta il flag di PRINTER_NOTIFY_INFO_DISCARDED nella struttura di PRINTER_NOTIFY_INFO specificata, cancella tutte le strutture PRINTER_NOTIFY_INFO_DATA e imposta il codice di errore su ERROR_OUT_OF_STRUCTURES.

Per altre informazioni sul flag di PRINTER_NOTIFY_INFO_DISCARDED, vedere la descrizione di FindNextPrinterChangeChangeNotification nella documentazione di Windows SDK.

Per altre informazioni, vedere Supporto delle notifiche di modifica della stampante.

Requisiti

Requisito Valore
Piattaforma di destinazione Desktop
Intestazione winsplp.h (include Winsplp.h)
Libreria Spoolss.lib
DLL Spoolss.dll

Vedi anche

RefreshPrinterChangeNotification

RouterAllocPrinterNotifyInfo