Share via


Funzione AddPrintProvidor

Importante

Il 6 luglio 2021 KB5005010 ha introdotto un'opzione di configurazione facoltativa basata sul Registro di sistema per limitare l'accesso a questa API solo agli utenti amministratori. Questa opzione è disattivata per impostazione predefinita.

Il 10 agosto 2021 KB5005652 modifica il valore predefinito di questa configurazione per richiedere diritti di amministratore per installare nuovi driver della stampante.

La funzione AddPrintProvidor installa un provider di stampa locale e collega i file di configurazione, dati e provider.

Sintassi

BOOL AddPrintProvidor(
  _In_ LPTSTR pName,
  _In_ DWORD  Level,
  _In_ LPBYTE pProviderInfo
);

Parametri

pName [in]

Puntatore a una stringa con terminazione Null che specifica il nome del server in cui deve essere installato il provider. Per i sistemi che supportano solo l'installazione locale dei provider, questo parametro deve essere NULL.

Livello [in]

Livello della struttura a cui punta pProviderInfo . Può essere una delle seguenti.

Valore Significato
1
La funzione usa una struttura PROVIDOR_INFO_1 .
2
La funzione usa una struttura PROVIDOR_INFO_2 .

pProviderInfo [in]

Puntatore a una struttura del provider di stampa, come indicato da Level.

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à di restituzione di questa funzione 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. Chiamando questa funzione da un thread che gestisce l'interazione con l'interfaccia utente, l'applicazione potrebbe sembrare non rispondente.

Prima che un'applicazione chiami la funzione AddPrintProvidor , tutti i file richiesti dal provider devono essere copiati nella directory SYSTEM32.

Un provider aggiunto da AddPrintProvidor può essere rimosso chiamando DeletePrintProvidor.

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
AddPrintProvidorW (Unicode) e AddPrintProvidorA (ANSI)

Vedi anche

Stampa

Funzioni dell'API spooler di stampa

DeletePrintProvidor

PROVIDOR_INFO_1

PROVIDOR_INFO_2