Funzione EnumPrintProcessorDatatypesA (winspool.h)

La funzione EnumPrintProcessorDatatypes di un processore di stampa enumera i tipi di dati supportati dal processore di stampa.

Sintassi

BOOL EnumPrintProcessorDatatypesA(
  [in, optional]  LPSTR   pName,
  [in]            LPSTR   pPrintProcessorName,
                  DWORD   Level,
  [out, optional] LPBYTE  pDatatypes,
                  DWORD   cbBuf,
  [out]           LPDWORD pcbNeeded,
  [out]           LPDWORD pcReturned
);

Parametri

[in, optional] pName

Puntatore fornito dal chiamante a una stringa che rappresenta il nome del server in cui è installato il processore di stampa. Se NULL, il server è il sistema locale.

[in] pPrintProcessorName

Puntatore fornito dal chiamante a una stringa che rappresenta il nome del processore di stampa.

Level

Valore fornito dal chiamante che indica il tipo delle strutture da restituire nel buffer a cui puntano pDatatypes. Questo valore deve essere 1, che indica che la struttura è DATATYPES_INFO_1.

[out, optional] pDatatypes

Puntatore fornito dal chiamante a un buffer per ricevere una matrice di strutture DATATYPES_INFO_1, seguita da un set di stringhe di caratteri che rappresentano i nomi dei tipi di dati. La struttura DATATYPES_INFO_1 è descritta nella documentazione di Microsoft Windows SDK. Il membro della struttura pName deve essere di tipo LPWSTR.

cbBuf

Valore fornito dal chiamante che rappresenta le dimensioni, in byte, del buffer a cui puntano pDatatypes.

[out] pcbNeeded

Puntatore fornito dal chiamante a una posizione per ricevere le dimensioni minime necessarie per il buffer a cui puntano da pDatatypes.

[out] pcReturned

Puntatore fornito dal chiamante a una posizione per ricevere il numero di strutture DATATYPES_INFO_1 restituite nel buffer a cui puntano pDatatypes.

Valore restituito

Se l'operazione ha esito positivo, la funzione deve restituire TRUE. Se l'operazione ha esito negativo, la funzione deve chiamare SetLastError per impostare un codice di errore e quindi restituire FALSE.

Commenti

I processori di stampa sono necessari per esportare una funzione EnumPrintProcessorDatatypes . Il provider di stampa locale chiama la funzione durante l'inizializzazione. La funzione viene chiamata anche quando un'applicazione chiama la versione del spooler della stessa funzione.

La funzione deve restituire una matrice di strutture DATATYPES_INFO_1, con ogni struttura che punta a una stringa che rappresenta un tipo di dati. Le stringhe effettive devono essere incluse anche nel buffer, dopo la matrice di strutture. Per un esempio, vedere Esempio di processore di stampa .

La funzione deve restituire il numero di strutture DATATYPES_INFO_1 restituite, ovvero il numero di tipi di dati supportati, nella posizione a cui punta pcReturned.

La funzione deve restituire la dimensione minima necessaria del buffer nella posizione a cui punta il pcbNeeded. Se il buffer fornito è troppo piccolo, la funzione deve specificare un valore per pcbNeeded, impostare il codice di errore su ERROR_INSUFFICIENT_BUFFER e restituire FALSE.

Requisiti

Requisito Valore
Piattaforma di destinazione Desktop
Intestazione winspool.h (include Winspool.h)