Serveur d'impression

Isoler les pilotes d'imprimante – Pilotes Windows – Serveur d’impression

Le 22 janvier 2020 - 12 minutes de lecture

<! – ->

La séparation du pilote d'imprimante augmente la fiabilité des services d'impression Windows en permettant au pilote d'imprimante de s'exécuter dans un processus distinct du processus où le spouleur d'impression s'exécute.L'isolation du pilote d'imprimante améliore la fiabilité du service d'impression Windows, en permettant aux pilotes d'imprimante de s'exécuter dans des processus distincts du processus dans lequel le spouleur d'impression s'exécute.

La prise en charge de l'isolement du pilote d'imprimante est implémentée dans Windows 7, Windows Server 2008 R2 et les systèmes d'exploitation ultérieurs.La prise en charge de l'isolement du pilote d'imprimante est implémentée dans Windows 7, Windows Server 2008 R2 et les systèmes d'exploitation ultérieurs.

Dans Windows 7 et Windows Server 2008 R2, le pilote d'imprimante de la boîte de réception doit prendre en charge l'isolement du pilote d'imprimante et pouvoir s'exécuter dans un processus isolé.Pour Windows 7 et Windows Server 2008 R2, un pilote d'imprimante de boîte de réception doit prendre en charge l'isolement du pilote d'imprimante et pouvoir s'exécuter dans un processus isolé.

Versions antérieures de WindowsVersions précédentes de Windows

Dans les versions précédentes de Windows, y compris Windows Server 2008, le pilote d'imprimante s'exécutait toujours dans le même processus que le spouleur.Dans les versions précédentes de Windows, y compris Windows Server 2008, les pilotes d'imprimante s'exécutaient toujours dans le même processus que le spouleur. Les composants du pilote d'imprimante exécutés par le processus du spouleur comprennent:Les composants du pilote d'imprimante exécutés dans le processus du spouleur étaient les suivants:

  • Module de configuration du pilote d'impressionModules de configuration du pilote d'impression

  • Processeur d'impressionProcesseurs d'impression

  • Module de renduModules de rendu

Si un composant du pilote d'impression échoue, le sous-système d'impression peut échouer, entraînant l'arrêt des opérations d'impression pour tous les utilisateurs et tous les composants d'impression.L'échec d'un seul composant du pilote d'impression peut entraîner l'échec du sous-système d'impression, interrompant les opérations d'impression pour tous les utilisateurs et pour tous les composants d'impression.

Nouvelle version de WindowsNouvelles versions de Windows

Dans Windows 7 et Windows Server 2008 R2, les administrateurs peuvent éventuellement configurer les pilotes d'imprimante pour qu'ils s'exécutent dans un processus isolé. Il s'agit d'un processus distinct du processus du spouleur.Avec Windows 7 et Windows Server 2008 R2, un administrateur peut, en option, configurer un pilote d'imprimante pour qu'il s'exécute dans un processus isolé – un processus distinct du processus du spouleur. L'isolement du pilote permet aux administrateurs d'éviter les échecs du service d'impression en raison d'erreurs de composants du pilote.En isolant le pilote, l'administrateur peut empêcher une défaillance d'un composant du pilote d'arrêter le service d'impression.

Pour plus d'informations sur les fonctions du spouleur, voir Fonctions et structures des composants du spouleur.Pour plus d'informations sur les fonctions du spouleur, voir Fonctions et structures des composants du spouleur.

Prise en charge de l'isolement des pilotes dans les fichiers INFPrise en charge de l'isolement des pilotes dans les fichiers INF

Par défaut, si le fichier INF qui installe le pilote d'imprimante n'indique pas que le pilote prend en charge l'isolation du pilote, le programme d'installation de la classe d'imprimante configure le pilote pour qu'il s'exécute dans un processus de spouleur.Par défaut, si le fichier INF qui installe un pilote d'imprimante n'indique pas que le pilote prend en charge l'isolation du pilote, le programme d'installation de la classe d'imprimante configure le pilote pour qu'il s'exécute dans le processus du spouleur. Toutefois, si le fichier INF indique que le pilote prend en charge l'isolation du pilote, le programme d'installation configure le pilote pour qu'il s'exécute dans un processus isolé.Toutefois, si le fichier INF indique que le pilote prend en charge l'isolation du pilote, le programme d'installation configure le pilote pour qu'il s'exécute dans un processus isolé. Les administrateurs peuvent remplacer ces paramètres de configuration et spécifier si chaque pilote s'exécute dans un processus de spouleur ou dans un processus isolé.Un administrateur peut remplacer ces paramètres de configuration et spécifier, pour chaque pilote, s'il doit exécuter le pilote dans le processus du spouleur ou dans un processus isolé.

Dans le fichier INF qui installe le pilote d'imprimante pour prendre en charge l'isolement du piloteIsolement du conducteurVous pouvez utiliser des mots clés pour indiquer si le pilote prend en charge l'isolement du pilote d'imprimante.Pour prendre en charge l'isolation du pilote, le fichier INF qui installe un pilote d'imprimante peut utiliser le DriverIsolation pour indiquer si le pilote prend en charge l'isolement du pilote d'imprimante. Isolement du conducteurLe paramètre = 2 indique que le pilote prend en charge l'isolement du pilote.Réglage DriverIsolation= 2 indique que le pilote prend en charge l'isolement du pilote. Isolement du conducteurLa valeur = 0 indique que le pilote ne prend pas en charge l'isolement du pilote.Réglage DriverIsolation= 0 indique que le pilote ne prend pas en charge l'isolement du pilote. Depuis le fichier INFisolement du conducteurSi vous omettez le mot clé, isolement du conducteurA le même effet que le réglage == 0.Omettre le DriverIsolation Le mot-clé du fichier INF a le même effet que la définition DriverIsolation= 0.

Fonction spouleur pour le réglage de la séparation du conducteurFonctions du spouleur pour les paramètres d'isolation du pilote

Le tableau suivant présente les fonctions du spouleur que les administrateurs peuvent utiliser pour configurer les paramètres d'isolation du pilote.Le tableau suivant présente les fonctions du spouleur qu'un administrateur peut utiliser pour configurer les paramètres d'isolation du pilote.

Le format des données est le suivant:Le format des données est le suivant:

  • Les pilotes de chaque groupe sont séparés par & # 39; & # 39;Le pilote de chaque groupe est séparé par & # 39; & # 39;
  • Chaque groupe de pilotes est séparé par & # 39; \ & # 39;Chaque groupe de pilotes est séparé par & # 39; \ & # 39;

Le premier groupe charge les pilotes dans le processus du spouleur.Le premier groupe charge le pilote dans les processus du spouleur. Chaque groupe suivant charge le pilote pour le processus détaché de chaque groupe.Chaque groupe suivant charge les pilotes dans des processus isolés par groupe. Le deuxième groupe est considéré par défaut comme un groupe "partagé" à partir duquel d'autres pilotes activés pour l'isolation sont chargés.Le deuxième groupe est considéré comme le & # 39; partagé & # 39; groupe dans lequel d'autres pilotes capables d'isolement sont chargés par défaut.

Configuration du mode d'isolation du pilote par la directionConfiguration du mode d'isolation du pilote via l'administration

Les administrateurs informatiques peuvent utiliser la console de gestion de l'impression Windows ou invoquer la fonction Spouleur Windows pour configurer les paramètres d'isolation du pilote pour chaque pilote d'imprimante installé sur l'ordinateur.Un administrateur d'ordinateur peut utiliser la console de gestion de l'impression Windows ou appeler les fonctions du spouleur Windows pour configurer les paramètres d'isolation du pilote pour chaque pilote d'imprimante installé sur un ordinateur. Les administrateurs configurent le pilote pour utiliser l'un des paramètres indiqués dans le tableau suivant.L'administrateur configure le pilote pour utiliser l'un des paramètres répertoriés dans le tableau suivant.

Mode de séparation du piloteMode d'isolation du pilote sensSens

partagerpartagé

Exécute le pilote dans un processus partagé avec d'autres pilotes d'imprimante mais distinct du processus du spouleur.Exécutez le pilote dans un processus partagé avec d'autres pilotes d'imprimante mais distinct du processus de spouleur.

SéparationIsolé

Exécutez le pilote dans un processus distinct du processus du spouleur et ne le partagez pas avec d'autres pilotes d'imprimante.Exécutez le pilote dans un processus distinct du processus du spouleur et non partagé avec d'autres pilotes d'imprimante.

AucunAucun

Exécutez le pilote dans un processus de spouleur.Exécutez le pilote dans le processus du spouleur.

Idéalement, le pilote d'imprimante peut s'exécuter en mode partagé.Idéalement, un pilote d'imprimante peut fonctionner en mode partagé. Autrement dit, il s'exécute dans un processus distinct qui est partagé avec d'autres pilotes d'imprimante, mais diffère du processus de spouleur.Autrement dit, il s'exécute dans un processus isolé partagé avec d'autres pilotes d'imprimante mais distinct du processus de spouleur. Le pilote peut s'exécuter dans un processus distinct du processus du spouleur, mais s'il est difficile de partager le processus avec d'autres pilotes, il doit s'exécuter en mode isolé.Un pilote peut avoir besoin de s'exécuter en mode isolé s'il peut s'exécuter dans un processus distinct du processus du spouleur, mais a du mal à partager le processus avec d'autres pilotes. Par exemple, un pilote mal conçu peut entrer en conflit avec un pilote associé ou une version différente du même pilote. Ou, un pilote peut échouer fréquemment ou avoir une fuite de mémoire qui interfère avec le fonctionnement d'autres pilotes qui s'exécutent dessus. Même processus.Par exemple, un pilote mal conçu peut avoir des noms de fichiers qui entrent en conflit avec ceux de pilotes associés ou de différentes versions du même pilote, ou le pilote peut être défaillant fréquemment ou avoir une fuite de mémoire qui interfère avec le fonctionnement d'autres pilotes qui s'exécutent dans le même processus.

Pour faciliter le dépannage, les administrateurs de domaine peuvent désactiver l'isolement des pilotes sur les ordinateurs du domaine. Les administrateurs peuvent également forcer tous les pilotes d'imprimante d'un ordinateur à s'exécuter en mode isolé.Pour prendre en charge le dépannage, l'administrateur de domaine peut désactiver la fonction d'isolation des pilotes sur un ordinateur du domaine, ou l'administrateur peut forcer tous les pilotes d'imprimante de l'ordinateur à s'exécuter en mode isolé. En mode isolé, chaque pilote doit s'exécuter dans un processus distinct du spouleur et des autres pilotes d'imprimante.En mode isolé, chaque pilote doit s'exécuter dans un processus distinct du spouleur et des autres pilotes d'imprimante.

Si l'isolation du pilote est désactivée par la stratégie de groupe, l'isolation est désactivée pour tous les pilotes d'imprimante.Si l'isolation du pilote est désactivée par la stratégie de groupe, l'isolation est désactivée pour tous les pilotes d'imprimante. Si l'isolation est activée, les pilotes individuels sont archivés en mode.Si l'isolation est activée, les pilotes individuels sont vérifiés en mode. Si le pilote a défini le mode d'isolement, il s'exécutera en mode partagé, isolé ou aucun en fonction de l'entrée de Registre.Si un pilote a le mode d'isolement défini, il s'exécute en mode partagé, isolé ou aucun, en fonction de l'entrée de Registre. Cependant, les pilotes pour lesquels le mode d'isolement n'est pas défini et qui sont compatibles avec l'isolement s'exécuteront en mode partagé.Cependant, si le pilote n'a pas de mode d'isolement défini et qu'il est compatible avec l'isolement, il s'exécute en mode partagé. Si le pilote n'est pas compatible avec le mode, la substitution de stratégie de groupe détermine si le pilote s'exécute en mode partagé ou en mode aucun.Si le pilote n'est pas compatible avec le mode, la substitution de stratégie de groupe détermine si le pilote s'exécute en mode partagé ou en mode aucun.

Le tableau suivant montre la carte de décision pour sélectionner le mode d'isolement du pilote.Le graphique suivant montre une carte de décision pour choisir le mode d'isolement du pilote:

Organigramme de sélection du mode d'isolement du pilote

Fonctions de spouleur autorisées sous isolation du piloteFonctions du spouleur autorisées sous isolation du pilote

L'isolement du pilote n'autorise que certaines fonctions.Seules des fonctions spécifiques sont autorisées sous l'isolement du pilote.

Fonction SpoolssFonctions Spoolss.dll

Les fonctions suivantes sont exportées par spoolss et peuvent être utilisées dans les plugins de spouleur en se liant à spoolss.Les fonctions suivantes sont exportées par spoolss.dll et sont disponibles pour les plugins de spouleur en se connectant à spoolss.lib.

AddMonitorWAddMonitorW

Ajouter une notification d'imprimante aux informationsAppendPrinterNotifyInfoData

FermerImprimanteFermerImprimante

DeletePortWDeletePortW

DeletePrintProcessorWDeletePrintProcessorW

EndDocPrinterEndDocPrinter

EndPagePrinterEndPagePrinter

EnumFormsWEnumFormsW

EnumJobsWEnumJobsW

FlushPrinterFlushPrinter

GetJobAttributesGetJobAttributes

GetJobAttributesExGetJobAttributesEx

GetJobWGetJobW

GetPrinterDataExWGetPrinterDataExW

Récupérer les données de l'imprimanteGetPrinterDataW

Obtenir le répertoire du pilote d'imprimanteGetPrinterDriverDirectoryW

Obtenez le pilote d'imprimanteGetPrinterDriverW

Obtenir l'imprimante wGetPrinterW

ImpersonatePrinterClientImpersonatePrinterClient

Ouvrez l'imprimante wOpenPrinterW

ReadPrinterReadPrinter

RouterCreatePrintAsyncNotificationChannelRouterCreatePrintAsyncNotificationChannel

RouterGetPrintClassObjectRouterGetPrintClassObject

SetJobWSetJobW

SetPrinterDataExWSetPrinterDataExW

Définir les données de l'imprimanteSetPrinterDataW

Imprimante Startdoc wStartDocPrinterW

StartPagePrinterStartPagePrinter

WritePrinterWritePrinter

Fonction WinSpool.drvFonctions WinSpool.drv

Les fonctions suivantes sont exportées par Winspool et peuvent être utilisées dans des plugins de spouleur en se connectant à Winspool.Les fonctions suivantes sont exportées par winspool.drv et sont disponibles pour les plugins de spouleur en se connectant à Winspool.h.

Ajouter une notification d'imprimante aux informationsAppendPrinterNotifyInfoData

ExtDeviceModeExtDeviceMode

ImpersonatePrinterClientImpersonatePrinterClient

IsValidDevmodeIsValidDevmode

PartialRhnessPrinterChangeNotificationPartialRhnessPrinterChangeNotification

ReplyPrinterChangeNotificationReplyPrinterChangeNotification

RevertToPrinterSelfRevertToPrinterSelf

RouterAllocBidiMemRouterAllocBidiMem

RouterAllocBidiResponseContainerRouterAllocBidiResponseContainer

Routeralloc Printer NotifyinfoRouterAllocPrinterNotifyInfo

RouterCreatePrintAsyncNotificationChannelRouterCreatePrintAsyncNotificationChannel

RouterFreeBidiMemRouterFreeBidiMem

RouterFreeBidiResponseContainerRouterFreeBidiResponseContainer

Imprimante sans routeur NotifyinfoRouterFreePrinterNotifyInfo

RouterGetPrintClassObjectRouterGetPrintClassObject

RouterRegisterForPrintAsyncNotificationsRouterRegisterForPrintAsyncNotifications

RouterUnregisterForPrintAsyncNotificationsRouterUnregisterForPrintAsyncNotifications

<! – ->

Commentaires

Laisser un commentaire

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