Condividi tramite


Voci del file INF della stampante

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.

Affinché un'applicazione di installazione installi una stampante in un server di stampa, deve chiamare la funzione AddPrinterDriverEx del spooler per caricare i file driver e quindi chiamare la funzione AddPrinter dello spooler per rendere disponibile la stampante nel server.

La funzione AddPrinterDriverEx richiede una struttura DRIVER_INFO_3 come input e la funzione AddPrinter richiede una struttura PRINTER_INFO_2 come input. Il programma di installazione predefinito della classe della stampante, Ntprint.dll, legge i file INF della stampante per ottenere i valori stringa che devono essere inseriti in queste strutture prima che vengano chiamate le funzioni.

È stato definito un set di voci di file INF per i driver della stampante che Ntprint.dll riconosce. Queste voci hanno il formato seguente:

Valore EntryName =

Dove EntryName è una stringa che identifica la voce e Value è un valore stringa assegnato alla voce.

Nella tabella seguente sono elencate le voci di file INF che devono essere incluse nei file INF della stampante. Per ogni voce, la tabella include gli elementi seguenti:

  • Valore che deve essere assegnato alla voce.

  • Valore predefinito che Ntprint.dll usa se la voce non è definita.

  • Membro della struttura in cui Ntprint.dll posiziona un puntatore al valore della voce.

Voce di file INF Valore Valore predefinito (se la voce non è specificata) Membro della struttura
ConfigFile Nome della DLL dell'interfaccia della stampante del driver. Valore specificato per DriverFile. membro pConfigFile della struttura DRIVER_INFO_3
Datafile Nome del file di dati associato a un driver, ad esempio un file PPD. Nome della sezione del driver all'interno del file INF. membro pDataFile della struttura DRIVER_INFO_3
DefaultDataType Non utilizzato con sistemi operativi basati su NT.
DriverCategory Vedere la nota 1, seguendo questa tabella. Se il file INF non specifica una categoria di driver (come la maggior parte dei driver v3), il presupposto è che la categoria del driver sia PrintFax.Printer. None
DriverFile Nome della DLL grafica della stampante del driver. Nome della sezione del driver all'interno del file INF. membro pDriverPath della struttura DRIVER_INFO_3
ExcludeFromSelect Vedere la nota 2, seguendo questa tabella. None None
FileGuida Nome del file della Guida della DLL dell'interfaccia. Nessuno. Non è specificato un file della Guida. membro pHelpFile della struttura DRIVER_INFO_3
LanguageMonitor Nome di un monitor lingua da associare al driver della stampante. Vedere la sezione LanguageMonitor Value Format ( Formato valore LanguageMonitor). Nessuno. Non è specificato un monitoraggio della lingua. membro pMonitorName della struttura DRIVER_INFO_3
PrintProcessor Nome di un processore di stampa da associare alla coda della stampante. Vedere la sezione Formato valore PrintProcessor. Viene usato il processore di stampa predefinito (WinPrint). membro pPrintProcessor della struttura DRIVER_INFO_2
VendorSetup Nome di una funzione all'interno di una DLL fornita dal fornitore, che gestisce operazioni di configurazione personalizzate della stampante. Nessuno. Vedere la nota 3, seguendo questa tabella. None
InboxVersionRequired Versione minima accettabile per tutti i driver core a cui fa riferimento INF. Per altre informazioni su InboxVersionRequired, vedere direttiva INF InboxVersionRequired. None None

1 (DriverCategory): se il file INF specifica una categoria, questi sono i valori consentiti (rispettivamente da 0 a 5) per specificare le categorie:

Categoria driver valore Descrizione
PrintFax.Printer 0 Coda di stampa che rappresenta una stampante connessa al computer (tramite un protocollo locale o di rete) o un proxy a una stampante fisica in un altro computer. Quando l'utente stampa su una stampante fisica, il risultato è carta con il documento stampato su di esso.
PrintFax.Fax 1 Coda di stampa che rappresenta una macchina fax fisica o virtuale. Quando l'utente stampa su una stampante fax, il risultato (possibilmente dopo un'ulteriore interazione dell'utente) è che viene inviato un fax.
PrintFax.Printer.File 2 Coda di stampa che genera documenti di copia temporanea. Quando l'utente stampa in una stampante di file, l'utente deve innanzitutto immettere un nome file e lo spooler invia quindi l'output stampato a tale file. Le stampanti di file richiedono sempre un nome di file, ma non accettano altri input utente. Quando non è possibile specificare un nome file, l'app genera un nome file reso disponibile per lo spooler. Esempi comuni di stampanti file sono Writer di documenti MICROSOFT XPS (MXDW) e pdf writer.
PrintFax.Printer.Virtual 3 Coda di stampa con un driver che esegue alcune operazioni sui dati stampati opachi per lo spooler di stampa. Quando l'utente stampa su una stampante virtuale, alcuni risultati possibili includono il documento stampato salvato da qualche parte nel computer, inviato a un'altra applicazione o inviato tramite posta elettronica. Un esempio comune di stampa in una stampante virtuale è lo scenario in cui il documento stampato viene inviato alla stampante Di Microsoft Office OneNote. Quando l'utente sceglie di stampare su una stampante virtuale, può essere necessario un'ulteriore interazione dell'utente, avviata dal driver o da un altro componente driver. Per altre informazioni, vedere Stampanti virtuali nei file INF della stampante.
PrintFax.Printer.Service 4 Coda di stampa che rappresenta un servizio di stampa. Quando l'utente sceglie di stampare in un servizio, il risultato (possibilmente dopo un'ulteriore interazione dell'utente) è che un servizio di stampa di terze parti riceve il contenuto stampato. L'utente può quindi passare alla posizione aziendale fisica per raccogliere l'output stampato.
PrintFax.Printer.3D 5 Coda di stampa che rappresenta il flusso di dati per una stampante 3D. Se questa categoria non è specificata involontariamente per una stampante 2D (una normale stampante), la stampante 2D restituirà semplicemente il contenuto 2D del flusso di dati. Se questa categoria viene specificata correttamente per una stampante 3D, ma un flusso di dati 2D viene inviato alla stampante 3D, la stampante 3D non genererà alcun output.

Si noti anche che i driver di stampa v4 usano un file Manifesto. Per altre informazioni, vedere Manifesto del driver V4.

Nota

2 (ExcludeFromSelect): ID dispositivo di un dispositivo che non deve essere visualizzato nella finestra di dialogo Seleziona dispositivo o nella Procedura guidata Aggiungi stampante. Per le stampanti, include tutte le voci PnP dei dispositivi con descrizioni dei dispositivi duplicati nel file INF; Ad esempio, i dispositivi con più voci per l'enumerazione a infrarossi e paralleli o per un altro bus. La voce ExcludeFromSelect, a differenza di tutte le altre in questa tabella, deve essere visualizzata nella sezione Flag di controllo del file INF. Per altre informazioni, vedere la sezione INF ControlFlags.

Nota

3 (VendorSetup): se non viene specificata alcuna voce VendorSetup, le operazioni di installazione personalizzate non vengono eseguite. In particolare, non è consentita alcuna interfaccia utente durante l'installazione del processore di stampa, del monitor di stampa o del driver della stampante, ad eccezione dell'uso della voce VendorSetup INF. Per altre informazioni su questa voce, vedere Operazioni di configurazione della stampante personalizzate.

Importante

VendorSetup è ora deprecato e non deve essere usato da nuovi driver v3 o v4 sviluppati. Queste informazioni su VendorSetup vengono fornite solo per riferimento o per la manutenzione dei driver v3 esistenti che usano già questa direttiva INF.

Le voci dei file INF della stampante vengono in genere specificate nelle sezioni dei dati dei file INF della stampante. Per esempi, vedere i file INF della stampante di esempio.

Formato del valore LanguageMonitor

Quando una voce LanguageMonitor è inclusa in un file INF della stampante, il formato del valore è il seguente:

LanguageMonitor=" MonitorName , MonitorDLLName "

Dove MonitorName è una stringa di testo che rappresenta il nome visualizzato del monitoraggio e MonitorDLLName è il nome file della DLL di monitoraggio.

Formato valore PrintProcessor

Quando una voce PrintProcessor è inclusa in un file INF della stampante, il formato del valore è il seguente:

PrintProcessor=" PrintProcessorName , PrintProcessorDLLName "

Dove PrintProcessorName è una stringa di testo che rappresenta il nome visualizzato del processore di stampa e PrintProcessorDLLName è il nome file della DLL.

File dipendenti

Un file dipendente è un file del driver della stampante incluso in una sezione di installazione del file INF della stampante con una dirid di 66000, ma non assegnata alle voci DriverFile, DataFile, ConfigFile o HelpFile.

L'esempio seguente mostra estratti da un file INF che installa tre file dipendenti copiandoli nella directory printer-driver , ovvero nella directory specificata da dirid 66000:

[Contoso]
%PRINTER_MODEL_123%=Contoso_Install_Section,LPTENUM\Contoso_1284.4_P29C5
...
[Contoso_Install_Section]
CopyFiles=@Contoso.ini,@Contoso.xml,@Contoso.dll
...
[DestinationDirs]
DefaultDestDir=66000
...
[Strings]
PRINTER_MODEL_123 = "Contoso Printer Model 123"

In questo esempio, Contoso.ini è un file INI della stampante, Contoso.xml è un file di estensione bidi e Contoso.dll è un componente personalizzato. Per altre informazioni sui file INI della stampante, sui file di estensione bidi e sui componenti personalizzati, vedere Installazione di componenti driver personalizzati e schema di comunicazione bidirezionale.

Le operazioni di puntamento e stampa installano sia il driver che i file dipendenti dal driver nel client.

È possibile specificare un massimo di 64 file dipendenti per ogni modello di stampante.

Schema di comunicazione bidirezionale

Sezione INF ControlFlags

Installazione di componenti driver personalizzati

Punto e stampa

Sezione di installazione file INF della stampante

Manifesto del driver V4