Funzione EnumPrinterDrivers
La funzione EnumPrinterDrivers enumera i driver della stampante installati in un server stampante specificato.
Sintassi
BOOL EnumPrinterDrivers(
_In_ LPTSTR pName,
_In_ LPTSTR pEnvironment,
_In_ DWORD Level,
_Out_ LPBYTE pDriverInfo,
_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 vengono enumerati i driver della stampante.
Se pName è NULL, la funzione enumera i driver della stampante locale.
-
pEnvironment [in]
-
Puntatore a una stringa con terminazione null che specifica l'ambiente ,ad esempio Windows x86, Windows IA64, Windows x64 o Windows NT R4000. Se questo parametro è NULL, la funzione usa l'ambiente corrente del chiamante/client (non della destinazione/server).
Se la stringa pEnvironment specifica "all", EnumPrinterDrivers enumera i driver della stampante per tutte le piattaforme installate nel server specificato.
-
Livello [in]
-
Tipo di struttura di informazioni restituita nel buffer pDriverInfo . Può essere uno dei seguenti.
Valore Significato - 1
DRIVER_INFO_1 - 2
DRIVER_INFO_2 - 3
DRIVER_INFO_3 - 4
DRIVER_INFO_4 - 5
DRIVER_INFO_5 - 6
DRIVER_INFO_6 - 8
DRIVER_INFO_8 -
pDriverInfo [out]
-
Puntatore a un buffer che riceve una matrice di strutture DRIVER_INFO_*, come specificato da Level. Ogni struttura contiene dati che descrivono un driver di stampante disponibile. Il buffer deve essere abbastanza grande per ricevere la matrice di strutture e qualsiasi stringa o altri dati a cui puntano i membri della struttura.
Per determinare le dimensioni del buffer necessarie, chiamare EnumPrinterDrivers con cbBuf impostato su zero. EnumPrinterDrivers 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 punta pDriverInfo
-
pcbNeeded [out]
-
Puntatore a una variabile che riceve il numero di byte copiati nel buffer pDriverInfo 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 pDriverInfo . Si tratta del numero di driver di stampante installati nel server di stampa specificato.
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 |
|
Libreria |
|
DLL |
|
Nomi Unicode e ANSI |
EnumPrinterDriversW (Unicode) e EnumPrinterDriversA (ANSI) |