Funzioni definite dai provider di stampa
Avviso
A partire da Windows 10, le API che supportano provider di stampa di terze parti sono deprecate. Microsoft non consiglia alcun investimento nei 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 i driver di stampa v4.
Questo argomento elenca tutte le funzioni che un provider di stampa può fornire. La maggior parte di queste funzioni è descritta nella documentazione di Microsoft Windows SDK. Se la funzione è descritta in Windows Driver Kit (WDK), il nome della funzione fornisce un collegamento alla pagina di riferimento associata.
Tutti i provider di stampa devono fornire puntatori per tutte le funzioni elencate. Tuttavia, la maggior parte dei provider di stampa forniti dal fornitore è "provider parziali" che non devono supportare molte delle operazioni definite dalle funzioni. Pertanto, molti puntatori di funzione possono essere NULL. Per altre informazioni sui provider di stampa parziali, vedere Scrittura di un provider di stampa di rete.
Negli elenchi di funzioni seguenti le funzioni che devono essere supportate sono etichettate come "Obbligatorio".
Tutti i provider di stampa devono esportare la funzione di inizializzazione, InitializePrintProvidor. I puntatori a tutte le altre funzioni devono essere forniti in una struttura PRINTPROVIDOR . Si noti che questi due nomi vengono ignorati, ma sono coerenti con i nomi visualizzati nel file di intestazione, Winsplp.h.
Le funzioni sono suddivise in gruppi e presentate nelle sezioni seguenti:
Funzione di inizializzazione
Funzioni di gestione della coda di stampa
Funzioni di gestione dei driver della stampante
Funzioni di creazione di processi di stampa
Funzioni di pianificazione dei processi di stampa
Funzioni di gestione dei moduli
Funzioni di gestione del processore di stampa
Funzioni di gestione del monitoraggio di stampa
Funzioni di gestione delle porte
Funzioni di gestione del Registro di sistema
Altre funzioni
Funzione di inizializzazione
Funzione | Descrizione |
---|---|
InitializePrintProvidor (Obbligatorio) | Inizializza il provider di stampa e restituisce puntatori alle funzioni fornite. |
Funzioni di gestione della coda di stampa
Funzione | Descrizione |
---|---|
Addprinter | Aggiunge una coda di stampa all'elenco di quelli gestiti dal provider di stampa e associa un processore di stampa alla coda di stampa. |
AddPrinterConnection | Crea una connessione alla coda di stampa specificata. |
ClosePrinter (obbligatorio) | Disabilita l'accesso del chiamante a una coda di stampa specificata. |
DeletePrinter | Elimina una coda di stampa dall'elenco di quelli gestiti dal provider di stampa. |
DeletePrinterConnection | Rimuove una connessione alla coda di stampa specificata. |
EnumPrinters (obbligatorio) | Enumera l'elenco delle code di stampa attualmente gestite dal provider di stampa. |
FindClosePrinterChangeNotification | Disabilita le notifiche di modifica della stampante abilitate da FindFirstPrinterChangeNotification. |
FindFirstPrinterChangeNotification | Restituisce un handle a un oggetto wait che il chiamante può usare per attendere gli eventi della stampante specificati. |
GetPrinter (obbligatorio) | Restituisce i valori dei parametri correnti per una coda di stampa specificata. |
OpenPrinter (obbligatorio) | Abilita l'accesso del chiamante a una coda di stampa specificata. |
RefreshPrinterChangeNotification | Chiamato dal router se il client chiama FindNextPrinterChangeNotification con il flag di PRINTER_NOTIFY_OPTIONS_REFRESH impostato. |
ResetPrinter | Modifica il tipo di dati di una coda di stampa o la struttura DEVMODEW . |
SetPrinter (obbligatorio) | Imposta i parametri per una coda di stampa specificata. |
WaitForPrinterChange | Obsoleta. |
Funzioni di gestione dei driver della stampante
Funzione | Descrizione |
---|---|
Addprinterdriver | Aggiunge i file driver della stampante specificati a un server specificato. |
AddPrinterDriverEx | Uguale a AddPrinterDriver, con parametri aggiuntivi. |
DeletePrinterDriver | Elimina l'accesso ai file driver della stampante specificati in un server specificato. |
DeletePrinterDriverEx | Uguale a DeletePrinterDriver, con parametri aggiuntivi. |
EnumPrinterDrivers | Restituisce un elenco di driver di stampante aggiunti a un server specificato chiamando AddPrinterDriver o AddPrinterDriverEx. |
Getprinterdriver | Restituisce informazioni su un driver della stampante, che il chiamante può quindi passare a AddPrinterDriver. Le informazioni restituite vengono in genere ottenute da un file INF. |
[GetPrinterDriverEx | Uguale a GetPrinterDriver, con parametri aggiuntivi. |
Getprinterdriverdirectory | Restituisce il nome della directory del driver della stampante del server. |
Funzioni di creazione di processi di stampa
Funzione | Descrizione |
---|---|
AbortPrinter (obbligatorio) | Tenta di eliminare il processo corrente dalla coda di stampa specificata. |
AddJob (obbligatorio) | Restituisce un identificatore del processo e un percorso di file di spool. Il chiamante usa CreateFile e WriteFile per inviare dati al file di spool. |
EndDocPrinter (obbligatorio) | Esegue operazioni di completamento del processo. |
EndPagePrinter | Esegue operazioni di completamento pagina. |
ReadPrinter | Ottiene informazioni sullo stato da una stampante bidirezionale. |
ScheduleJob (obbligatorio) | Informa il provider che un processo specificato può essere pianificato. Il processo viene specificato da un identificatore di processo restituito in precedenza da AddJob. |
StartDocPrinter (obbligatorio) | Prepara il provider di stampa per iniziare a spooling di un processo di stampa. |
StartPagePrinter | Prepara il provider di stampa per ricevere una pagina del processo di stampa. |
WritePrinter (obbligatorio) | Riceve una parte del flusso di dati del processo di stampa. |
Nota
AddJob... La sequenza ScheduleJob è un'alternativa a StartDocPrinter... Sequenza EndDocPrinter.
Funzioni di pianificazione dei processi di stampa
Funzione | Descrizione |
---|---|
EnumJobs (obbligatorio) | Restituisce un elenco di processi di stampa pianificati. |
GetJob (obbligatorio) | Restituisce i parametri del processo. |
SetJob (obbligatorio) | Annulla, sospende, riprende o riavvia un processo di stampa o imposta i parametri del processo. |
Funzioni di gestione dei moduli
Funzione | Descrizione |
---|---|
AddForm | Aggiunge un modulo specificato all'elenco di quelli disponibili per una stampante specificata. |
DeleteForm | Rimuove un modulo specificato dall'elenco di quelli disponibili per una stampante specificata. |
EnumForms | Restituisce un elenco di moduli disponibili per una stampante specificata. |
GetForm | Restituisce le caratteristiche di un modulo specificato. |
SetForm | Modifica le caratteristiche di un modulo specificato. |
Funzioni di gestione del processore di stampa
Funzione | Descrizione |
---|---|
AddPrintProcessor | Installa un processore di stampa nel server specificato e lo aggiunge all'elenco di quelli che il provider di stampa può chiamare. |
DeletePrintProcessor | Elimina un processore di stampa dall'elenco di quelli che il provider di stampa può chiamare. |
EnumPrintProcessorDataTypes | Restituisce un elenco dei tipi di dati supportati dai processori di stampa chiamabili dal provider di stampa. |
EnumPrintProcessors | Restituisce l'elenco dei processori di stampa che il provider di stampa può chiamare. |
GetPrintProcessorDirectory | Restituisce il percorso della directory in cui devono essere archiviati i file del processore di stampa. |
Funzioni di gestione del monitoraggio di stampa
Funzione | Descrizione |
---|---|
AddMonitor | Aggiunge un monitoraggio di stampa all'elenco di quelli che il provider di stampa può chiamare. |
DeleteMonitor | Elimina un monitor di stampa dall'elenco di quelli che il provider di stampa può chiamare. |
EnumMonitors | Restituisce l'elenco dei monitoraggi di stampa che il provider di stampa può chiamare. |
Funzioni di gestione delle porte
Funzione | Descrizione |
---|---|
AddPort | Aggiunge una porta della stampante all'elenco di quelli disponibili, in genere chiamando la funzione AddPortUI del monitoraggio della porta specificata. |
AddPortEx(/previous-version/ff545025(v%3dvs.85)) | Uguale a AddPort, con parametri aggiuntivi. |
ConfigurePort (obbligatorio) | Configura una porta della stampante, in genere chiamando la funzione ConfigurePortUI del monitor della porta specificata. |
DeletePort (obbligatorio) | Elimina una porta della stampante dall'elenco di quelli disponibili, in genere chiamando la funzione DeletePortUI del monitor della porta specificata. |
EnumPorts (obbligatorio) | Restituisce un elenco delle porte della stampante disponibili. |
SetPort | Imposta i parametri per una porta della stampante specificata. |
Funzioni di gestione del Registro di sistema
Funzione | Descrizione |
---|---|
DeletePrinterData | Elimina il valore attualmente assegnato a un nome valore specificato, nella chiave PrinterDriverData della stampante specificata. |
DeletePrinterDataEx | Uguale a DeletePrinterData, con parametri aggiuntivi. |
DeletePrinterKey | Elimina una chiave specificata e le relative sottochiavi, se attualmente vengono archiviate nel Registro di sistema nella chiave PrinterDriverData della stampante specificata. |
EnumPrinterData | Restituisce ognuno dei nomi dei valori e i valori attualmente assegnati archiviati nel Registro di sistema sotto la chiave PrinterDriverData della stampante specificata. |
EnumPrinterDataEx | Uguale a EnumPrinterData, con parametri aggiuntivi. |
EnumPrinterKey | Restituisce un elenco di sottochiavi attualmente contenuti nel Registro di sistema con un nome di chiave specificato. |
GetPrinterData | Restituisce il valore attualmente assegnato a un nome valore specificato, archiviato nel Registro di sistema nella chiave PrinterDriverData della stampante specificata. |
GetPrinterDataEx | Uguale a GetPrinterData, con parametri aggiuntivi. |
SetPrinterData | Archivia un nome di valore e un valore specificato nel Registro di sistema, nella chiave PrinterDriverData della stampante specificata. |
SetPrinterDataEx | Uguale a SetPrinterData, con parametri aggiuntivi. |
Altre funzioni
Funzione | Descrizione |
---|---|
XcvData | Fornisce un percorso di comunicazione tra una DLL dell'interfaccia utente di monitoraggio della porta e una DLL del server di monitoraggio delle porte. |