Condividi tramite


Supporto api Win32 per le funzionalità di stampa

Importante

La piattaforma di stampa moderna è il mezzo preferito di Windows per comunicare con le stampanti. Ti consigliamo di usare il driver di classe IPP di Microsoft, insieme a Print Support Apps (PSA), per personalizzare l'esperienza di stampa in Windows 10 e 11 per lo sviluppo di dispositivi per stampanti.

Per altre informazioni, vedere Piattaforma di stampa moderna e guida alla progettazione dell'app di supporto per la stampa.

Il sottosistema di stampa windows Vista offre supporto per la compatibilità che consente alle applicazioni Windows Presentation Foundation (WPF) di usare driver di stampa basati su GDI e consente alle applicazioni basate su Microsoft Win32 di usare i driver di stampa XPSDrv. Questa compatibilità viene fornita tramite un livello di shim software. Gli shim sono moduli software che eseguono operazioni di trasformazione sui dati in modo che il software altrimenti incompatibile possa interagire. La figura seguente illustra i percorsi dati di questa implementazione per le funzionalità di stampa.

diagramma che illustra i flussi di dati delle funzionalità di stampa.

Sia i driver di stampa XPSDrv che i driver di stampa basati su GDI versione 3 supportano la funzione DrvDeviceCapabilities . Quando un'applicazione Win32 chiama DrvDeviceCapabilities o la funzione GetDevCap , il sottosistema di stampa chiamerà DrvDeviceCapabilities per raccogliere le informazioni sulle funzionalità del dispositivo dal driver di stampa.

Quando un'applicazione WPF richiede un documento PrintCapabilities da un driver di stampa, il sottosistema di stampa eseguirà una delle operazioni seguenti:

  • Se il driver di stampa supporta l'interfaccia IPrintTicketProvider, il sottosistema di stampa eseguirà una query sul driver di stampa per il documento PrintCapabilities usando il metodo IPrintTicketProvider::GetPrintCapabilities.

  • Se il driver di stampa non supporta l'interfaccia IPrintTicketProvider, Print Ticket Manager eseguirà una query sulla funzione DrvDeviceCapabilities del driver di stampa e userà le informazioni restituite per creare un documento PrintTicket restituito all'applicazione.

Per altre informazioni su come l'interfaccia IPrintTicketProvider è supportata dai driver di stampa Microsoft, vedere Printer Driver and Plug-in Interface Design in Windows Vista.For more information about how the IPrintTicketProvider interface is supported by Microsoft print drivers, see Printer Driver and Plug-in Interface Design in Windows Vista.