Funzione AddPrintDeviceObject (winsplp.h)
Avviso
A partire da Windows 10, le API che supportano provider di stampa di terze parti sono deprecate. Microsoft non consiglia alcun investimento in provider di stampa di terze parti. Inoltre, nei Windows 8 e nei prodotti più recenti in cui è disponibile il modello di driver di stampa v4, i provider di stampa di terze parti potrebbero non creare o gestire code che usano driver di stampa v4.
La funzione del provider di stampa AddPrintDeviceObject crea un oggetto dispositivo per una coda del provider di stampa.
Sintassi
HRESULT AddPrintDeviceObject(
[in] HANDLE hPrinter,
[out] HANDLE *phDeviceObject
);
Parametri
[in] hPrinter
HANDLE per una stampante aperta. Deve trattarsi di un HANDLE restituito dalle funzioni spooler AddPrinter o OpenPrinter .
[out] phDeviceObject
Handle per l'oggetto dispositivo, se è stato creato correttamente.
Valore restituito
La funzione AddPrintDeviceObject restituisce S_OK, se l'oggetto dispositivo è stato creato correttamente. In caso contrario, restituisce un errore.
Commenti
La funzione AddPrintDeviceObject deve essere chiamata nelle situazioni seguenti:
L'utente installa una stampante
Il provider di stampa deve chiamare questa funzione dopo l'installazione della stampante.
La funzione deve essere chiamata rappresentando l'utente che sta installando la stampante.
Il provider di stampa viene inizializzato dopo l'avvio del servizio spooler
Il provider di stampa deve chiamare questa funzione per ogni stampante installata in precedenza di proprietà del provider. Durante questo periodo, AddPrintDeviceObject non deve rappresentare il contesto utente quando viene chiamato.
Qualsiasi oggetto dispositivo aggiunto tramite AddPrintDeviceObject verrà mantenuto fino a quando non viene rimosso tramite RemovePrintDeviceObject o fino al riavvio del servizio spooler. E quando i servizi di spooler si arrestano, tutti gli oggetti dispositivo vengono eliminati automaticamente.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Desktop |
Intestazione | winsplp.h (include Winspool.h) |
Libreria | WinSpool.lib |
DLL | WinSpool.drv |