Funzione EnumPrintProcessors

La funzione EnumPrintProcessors enumera i processori di stampa installati nel server specificato.

Sintassi

BOOL EnumPrintProcessors(
  _In_  LPTSTR  pName,
  _In_  LPTSTR  pEnvironment,
  _In_  DWORD   Level,
  _Out_ LPBYTE  pPrintProcessorInfo,
  _In_  DWORD   cbBuf,
  _Out_ LPDWORD pcbNeeded,
  _Out_ LPDWORD pcReturned
);

Parametri

pName [in]

Puntatore a una stringa con terminazione null che specifica il nome del server in cui risiedono i processori di stampa. Se questo parametro è NULL, i processori di stampa locali vengono enumerati.

pEnvironment [in]

Puntatore a una stringa con terminazione null che specifica l'ambiente ,ad esempio Windows x86, Windows IA64 o Windows x64. Se questo parametro è NULL, viene usato l'ambiente corrente dell'applicazione chiamante e del computer client (non dell'applicazione di destinazione e del server di stampa).

Livello [in]

Tipo di informazioni restituite nel buffer pPrintProcessorInfo . Questo parametro deve essere 1.

pPrintProcessorInfo [out]

Puntatore a un buffer che riceve una matrice di strutture PRINTPROCESSOR_INFO_1 . Ogni struttura descrive un processore di stampa disponibile. Il buffer deve essere abbastanza grande per ricevere la matrice di strutture e tutte le stringhe a cui puntano i membri della struttura.

Per determinare le dimensioni del buffer necessarie, chiamare EnumPrintProcessors con cbBuf impostato su zero. EnumPrintProcessors ha esito negativo, GetLastError restituisce ERROR_INSUFFICIENT_BUFFER e il parametro pcbNeeded restituisce le dimensioni, in byte, del buffer necessario per contenere la matrice di strutture e i relativi dati.

cbBuf [in]

Dimensioni, in byte, del buffer a cui fa riferimento pPrintProcessorInfo.

pcbNeeded [out]

Puntatore a una variabile che riceve il numero di byte copiati nel buffer pPrintProcessorInfo se la funzione ha esito positivo. Se il buffer è troppo piccolo, la funzione ha esito negativo e la variabile riceve il numero di byte necessari.

pcReturned [out]

Puntatore a una variabile che riceve il numero di strutture restituite nel buffer pPrintProcessorInfo .

Valore restituito

Se la funzione ha esito positivo, il valore restituito è un valore diverso da zero.

Se la funzione ha esito negativo, il valore restituito è zero.

Commenti

Nota

Si tratta di una funzione di blocco o sincrona e potrebbe non restituire immediatamente. La velocità con cui questa funzione restituisce dipende da fattori di runtime come lo stato della rete, la configurazione del server di stampa e i fattori di implementazione del driver della stampante difficili da prevedere durante la scrittura di un'applicazione. La chiamata a questa funzione da un thread che gestisce l'interazione con l'interfaccia utente potrebbe rendere l'applicazione non rispondente.

Requisiti

Requisito Valore
Client minimo supportato
Windows 2000 Professional [solo app desktop]
Server minimo supportato
Windows 2000 Server [solo app desktop]
Intestazione
Winspool.h (include Windows.h)
Libreria
Winspool.lib
DLL
Winspool.drv
Nomi Unicode e ANSI
EnumPrintProcessorsW (Unicode) e EnumPrintProcessorsA (ANSI)

Vedi anche

Stampa

Funzioni dell'API spooler di stampa

AddPrintProcessor

EnumPrintProcessorDatatypes

PRINTPROCESSOR_INFO_1