Serveur d'impression

Entrées de fichier INF de l'imprimante – Pilotes Windows – Serveur d’impression

Le 29 mai 2020 - 10 minutes de lecture

<! – ->

Pour qu'une application d'installation installe une imprimante sur un serveur d'impression, elle doit appeler le spouleur AddPrinterDriverEx pour charger les fichiers du pilote, puis appeler le spouleur AddPrinter pour rendre l'imprimante disponible sur le serveur.

le AddPrinterDriverEx nécessite une structure DRIVER_INFO_3 en entrée, et la fonction AddPrinter La fonction requiert une structure PRINTER_INFO_2 en entrée. Le programme d'installation par défaut de la classe d'imprimante Windows 2000 ou version ultérieure, Ntprint.dll, lit les fichiers INF de l'imprimante pour obtenir les valeurs de chaîne qui doivent être placées dans ces structures avant d'appeler les fonctions.

le AddPrinterDriverEx et AddPrinter Les fonctions, ainsi que les structures DRIVER_INFO_3 et PRINTER_INFO_2, sont décrites dans la documentation du SDK Microsoft Windows.

Un ensemble d'entrées de fichier INF pour les pilotes d'imprimante que Ntprint.dll reconnaît a été défini. Ces entrées ont le format suivant:

EntryName = Valeur

EntryName est une chaîne identifiant l'entrée et Valeur est une valeur de chaîne affectée à l'entrée.

Le tableau suivant répertorie les entrées de fichier INF qui doivent être incluses dans les fichiers INF de l'imprimante. Pour chaque entrée, le tableau comprend les éléments suivants:

  • La valeur qui doit être affectée à l'entrée.

  • La valeur par défaut que Ntprint.dll utilise si l'entrée n'est pas définie.

  • Membre de structure dans lequel Ntprint.dll place un pointeur sur la valeur d'entrée.

Entrée de fichier INF Valeur Valeur par défaut (si entrée non spécifiée) Membre de la structure
ConfigFile Nom de la DLL de l'interface d'imprimante du pilote. Valeur spécifiée pour DriverFile. pConfigFile membre de la structure DRIVER_INFO_3 (décrite dans la documentation du SDK Windows)
Fichier de données Nom du fichier de données associé au pilote, tel qu'un fichier PPD. Nom de la section du pilote dans le fichier INF. pDataFile membre de la structure DRIVER_INFO_3
DefaultDataType Non utilisé avec les systèmes d'exploitation basés sur NT.
DriverCategory Voir Note 1, en suivant ce tableau. Si le fichier INF ne spécifie pas de catégorie de pilote (comme la plupart des pilotes v3), l'hypothèse est que la catégorie du pilote est PrintFax.Printer. Aucun
DriverFile Nom de la DLL graphique de l'imprimante du pilote. Nom de la section du pilote dans le fichier INF. pDriverPath membre de la structure DRIVER_INFO_3
ExcludeFromSelect Voir Note 2, en suivant ce tableau. Aucun Aucun
HelpFile Nom du fichier d'aide de la DLL d'interface. Aucun. Un fichier d'aide n'est pas spécifié. pHelpFile membre de la structure DRIVER_INFO_3
LanguageMonitor Nom d'un moniteur de langue à associer au pilote d'imprimante. Voir le Format de valeur LanguageMonitor section. Aucun. Un moniteur de langue n'est pas spécifié. pMonitorName membre de la structure DRIVER_INFO_3
PrintProcessor Nom d'un processeur d'impression à associer à la file d'attente d'impression. Voir le Format de valeur du processeur d'impression section. Le processeur d'impression par défaut (WinPrint) est utilisé. pPrintProcessor membre de la structure DRIVER_INFO_2 (décrite dans la documentation du SDK Windows)
VendorSetup Nom d'une fonction dans une DLL fournie par le fournisseur, qui gère les opérations de configuration d'imprimante personnalisées. Aucun. Voir Note 3, en suivant ce tableau. Aucun
InboxVersionRequired La version minimale acceptable pour tous les pilotes principaux référencés par l'INF. Pour plus d'informations sur InboxVersionRequired, consultez la directive INF InboxVersionRequired. Aucun Aucun

Remarque 1 (DriverCategory): Si le fichier INF spécifie une catégorie, ce sont les valeurs autorisées (0 à 5 respectivement) pour spécifier des catégories:

Catégorie de conducteur Valeur La description
PrintFax.Printer 0 Une file d'attente d'impression qui représente soit une imprimante connectée à l'ordinateur (via un protocole local ou réseau), soit un proxy vers une imprimante physique sur un autre ordinateur. Lorsque l'utilisateur imprime sur une imprimante physique, le résultat est du papier avec le document imprimé dessus.
PrintFax.Fax 1 Une file d'attente d'impression qui représente un télécopieur physique ou virtuel. Lorsque l'utilisateur imprime sur une imprimante-télécopieur, le résultat (éventuellement après une nouvelle interaction de l'utilisateur) est l'envoi d'une télécopie.
PrintFax.Printer.File 2 Une file d'attente d'impression qui génère des documents de copie électronique. Lorsque l'utilisateur imprime sur une imprimante de fichiers, l'utilisateur doit d'abord saisir un nom de fichier et le spouleur envoie ensuite la sortie imprimée à ce fichier. Les imprimantes de fichiers nécessitent toujours un nom de fichier mais ne prennent aucune autre entrée utilisateur. Lorsqu'il n'existe aucune option permettant à l'utilisateur de fournir un nom de fichier, l'application génère un nom de fichier mis à la disposition du spouleur. Les exemples courants d'imprimantes de fichiers sont Microsoft XPS Document Writer (MXDW) et les rédacteurs PDF.
PrintFax.Printer.Virtual 3 Une file d'attente d'impression dotée d'un pilote qui effectue certaines opérations sur les données imprimées qui sont opaques pour le spouleur d'impression. Lorsque l'utilisateur imprime sur une imprimante virtuelle, certains résultats possibles incluent le document imprimé enregistré quelque part sur l'ordinateur, envoyé à une autre application ou envoyé par courrier électronique. Un exemple courant d'impression sur une imprimante virtuelle est le scénario dans lequel le document imprimé est envoyé à l'imprimante Microsoft Office OneNote. Lorsque l'utilisateur choisit d'imprimer sur une imprimante virtuelle, il peut être nécessaire d'interagir davantage avec l'utilisateur, initié par le pilote ou un autre composant du pilote. Pour plus d'informations, consultez Imprimantes virtuelles dans les fichiers INF de l'imprimante.
PrintFax.Printer.Service 4 Une file d'attente d'impression qui représente un service d'impression. Lorsque l'utilisateur choisit d'imprimer vers un service, le résultat (éventuellement après une nouvelle interaction de l'utilisateur) est qu'un service d'impression tiers reçoit le contenu imprimé. L'utilisateur peut ensuite se rendre sur le lieu de travail physique pour récupérer la sortie imprimée.
PrintFax.Printer.3D 5 Une file d'attente d'impression qui représente le flux de données pour une imprimante 3D. Si cette catégorie est spécifiée involontairement pour une imprimante 2D (une imprimante standard), l'imprimante 2D affichera simplement le contenu 2D du flux de données. Si cette catégorie est correctement spécifiée pour une imprimante 3D, mais qu'un flux de données 2D est envoyé à l'imprimante 3D, l'imprimante 3D ne générera aucune sortie.

Notez également que les pilotes d'impression v4 utilisent un fichier manifeste. Pour plus d'informations, voir Manifeste du pilote V4.

Remarque 2 (ExcludeFromSelect): Le Reference de l'appareil d'un appareil qui ne doit pas figurer sur le Choisir un appareil ou dans l'Assistant Ajout d'imprimante. Pour les imprimantes, cela inclut toutes les entrées PnP des périphériques qui ont des descriptions de périphériques en double dans le fichier INF; par exemple, les appareils qui ont plusieurs entrées pour l'énumération infrarouge et parallèle ou pour un autre bus. L'entrée ExcludeFromSelect, contrairement à toutes les autres de ce tableau, doit apparaître dans la section Indicateurs de contrôle du fichier INF. Voir Section INF ControlFlags pour plus d'informations.

Remarque 3 (VendorSetup): Si aucune entrée VendorSetup n'est spécifiée, aucune opération de configuration personnalisée n'est effectuée. En particulier, aucune interface utilisateur n'est autorisée pendant l'installation du processeur d'impression, du moniteur d'impression ou du pilote d'imprimante, sauf en utilisant l'entrée VendorSetup INF. Pour plus d'informations sur cette entrée, voir Opérations de configuration d'imprimante personnalisées.

Important : VendorSetup est désormais obsolète et ne doit plus être utilisé par Nouveau les pilotes v3 ou v4 que vous développez. Ces informations sur VendorSetup sont fournies à titre de référence uniquement ou pour la maintenance des pilotes v3 existants qui utilisent déjà cette directive INF.

Les entrées du fichier INF de l'imprimante sont généralement spécifiées dans les sections de données du fichier INF de l'imprimante. Pour obtenir des exemples, consultez les exemples de fichiers INF d'imprimante.

Format de valeur LanguageMonitor

Lorsqu'une entrée LanguageMonitor est incluse dans un fichier INF d'imprimante, le format de la valeur est le suivant:

LanguageMonitor = " MonitorName , MonitorDLLName "

MonitorName est une chaîne de texte représentant le nom affiché du moniteur, et MonitorDLLName est le nom de fichier de la DLL du moniteur.

Format de valeur du processeur d'impression

Lorsqu'une entrée PrintProcessor est incluse dans un fichier INF d'imprimante, le format de la valeur est le suivant:

PrintProcessor = " PrintProcessorName , PrintProcessorDLLName "

PrintProcessorName est une chaîne de texte représentant le nom affiché du processeur d'impression, et PrintProcessorDLLName est le nom de fichier de la DLL.

Fichiers dépendants

Pour Windows 2000 et versions ultérieures, un fichier dépendant est un fichier de pilote d'imprimante inclus dans une section d'installation de fichier INF d'imprimante avec un dirid de 66000, mais non affecté aux entrées DriverFile, DataFile, ConfigFile ou HelpFile.

L'exemple suivant montre des extraits d'un fichier INF qui installe trois fichiers dépendants en les copiant dans le répertoire du pilote d'imprimante (c'est-à-dire dans le répertoire spécifié par 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 = "Modèle d'imprimante Contoso 123"

Dans cet exemple, Contoso.ini est un fichier INI d'imprimante, Contoso.xml est un fichier d'extension bidi et Contoso.dll est un composant personnalisé. Pour plus d'informations sur les fichiers INI de l'imprimante, les fichiers d'extension bidi et les composants personnalisés, voir Installation de composants de pilote personnalisés et de schéma de communication bidirectionnel.

Les opérations de pointage et d'impression installent le pilote et les fichiers dépendants du pilote sur le client.

Un maximum de 64 fichiers dépendants peut être spécifié pour chaque modèle d'imprimante.

Schéma de communication bidirectionnel
Section INF ControlFlags
Installation de composants de pilote personnalisés
Pointer et imprimer
Section d'installation du fichier INF de l'imprimante
Manifeste du pilote V4

<! – ->

Commentaires

Laisser un commentaire

Votre commentaire sera révisé par les administrateurs si besoin.