Изолация на драйвера за принтер в Windows 7

Неуспехът на услугата за управление на печат (известен също като спулер за печат) поради грешки в драйверите за печат е важен проблем в семейството на Windows на ОС. Проблемът се усложнява от факта, че грешките с драйвери за печат са доста трудни за диагностициране и идентифицирането на проблемния драйвер може да бъде главоболие за системния администратор. Най-лошото е, че отказът на драйвера за печат на принтера, зареден в процеса на опашката за печат, предизвика самия спулер да се срине, в резултат на това цялата система за печат на сървъра спира да работи и тези последствия засягат голям брой потребители и принтери. Въпреки това, заедно с пускането на Windows 2008 R2 и Windows 7, всички тези проблеми трябва да са минало, защото технологията за изолиране на драйвери за принтер се появи в тези ОС..

Както подсказва името, технологията за изолиране на драйвери за принтер (PDI) изолира драйверите на принтера в отделни процеси, които са отделни от процеса за управление на печат (spoolsv.exe). Следователно, ако в драйвера на принтера възникне някаква грешка, той засяга само процеса, който този драйвер е заредил, а не процеса spoolsv.exe, като по този начин предотвратява срива и подобрява надеждността на сървъра за печат. В допълнение, тази нова функция предоставя възможност за изолиране на нови версии на драйвери за тестване или отстраняване на грешки, както и възможност за идентифициране на неуспешен драйвер.

Процесът на зареждане на драйвери, които трябва да работят изолирано от "Мениджъра на печат", се нарича PrintIsolationHost.exe.

Има три режима на технология за изолиране на водача:

  • никой - Драйверите за принтери се зареждат от процесите на мениджъра за печат (спойлер), т.е. в този режим системата работи както обикновено
  • Споделено - Драйверите са конфигурирани да работят с един общ екземпляр от процеса PrintIsolationHost.exe, отделен от процеса spoolsv.exe. Това е режимът на работа по подразбиране..
  • Изолирани - Всеки драйвер за принтер е конфигуриран да използва своя собствена инстанция на процеса PrintIsolationHost.exe..

За да проверите дали драйверът за принтер поддържа PDI технология: отидете на следния клон на системния регистър.
HKLM \ SYSTEM \ CurrentControlSet \ Control \ Print \ Environment \\ Drivers \ Version-3 \\ PrinterDriverAttributes

Възможни стойности:
0: Шофьорът не поддържаPDI
2: Поддържа драйвера за принтераPDI

Ако стойността липсва, то е 0 и драйверът PDI не поддържа

Как да промените режима на изолиране на драйвера за принтер

Има няколко начина за конфигуриране на режима на изолиране на драйверите за печат:

  • Конфигурация с помощта на INF файла на драйвера за печат
  • Конзола за управление на печат (PMC)
  • Групова политика

INF файл на драйвера за печат

Използвайки inf файла на драйвера на принтера, можете да определите дали драйверът поддържа PDI или не. Този inf файл съдържа ключа. DriverIsolation, което определя поддръжката на PDI. Съответно, ако стойността на този параметър 0, тогава този PDI драйвер не поддържа.

Конзола за управление на печат (PMC)

С новата конзола за управление на принтера (PMC) можете лесно да управлявате изолацията на драйвера. Ако отворите конзолата PMC и отидете в секцията с драйвери, тогава в десния прозорец можете да видите списъка с драйвери, инсталирани в системата, а в колоната Изолация на драйвери ще се покаже PDI режимът на драйвера на принтера..

За да промените режима на работа на драйвера, трябва да щракнете с десния бутон върху желания драйвер и да изберете „Задайте изолация на водача". Предлагат се следните опции:

  • никой
  • Споделено
  • Изолирани
  • Система по подразбиране (няма)

Забележки:

  • опция  система По подразбиране - означава, че драйверът работи в съответствие със стандартните му настройки или настройки на груповата политика.
  • Освен това, ако груповата политика „Изпълнение на драйвери за печат в изолирани процеси“ е деактивирана (деактивирана), тогава режимът на изолиране на PDI не може да бъде променен.

Групови правила за управление на изолацията на водача

Има две настройки за групови правила, които ви позволяват да конфигурирате режима на изолиране за драйвери на принтера. Можете да ги намерите в раздела:

Конфигурация на компютъра \ Административни шаблони \ Принтери.

Те се наричат:

  • Изпълнете драйвери за печат в изолирани процеси
  • Отмяна на настройката за съвместимост на изпълнение на драйвера за печат, отчетена от драйвера за печат (Парамет на замяна на драйвера за изпълнение на драйвера за печат)

политика: Изпълнете драйвери за печат в изолиращи процеси

Настройките в това правило определят дали драйверите за принтера ще се изпълняват в един или отделни процеси. Ако драйверите за принтер са заредени с изолиран процес (или процеси), тогава всяка повреда в драйвера за печат няма да доведе до срив на услугата Print Spooler..

В случай че сте активирали или не сте конфигурирали тази политика, Print Manager ще изпълни драйверите в изолиран процес.

Ако деактивирате това правило, драйверите за принтера ще се изпълняват по време на процеса за управление на печат (както във версии на Windows XP / 2003 и по-стари версии на ОС).
политика: Отмяна на настройката за съвместимост на изпълнение на драйвера за печат, отчетена от драйвера за печат

Политиката определя дали Print Manager трябва да отмени режима на PDI, посочен в драйвера на принтера. Т.е. политика активира изпълнението на драйвери в изолиран процес, дори ако драйверът на принтера не е съвместим.

Ако активирате това правило, спулерът за печат ще игнорира флага за съвместимост, зададен за драйвера на принтера..

Ако деактивирате или не конфигурирате тази политика, спулерът за печат ще използва режима на изолиране, зададен по подразбиране в драйвера на принтера.

В допълнение към технологията за изолиране на драйвери за принтер, Windows 7 и Windows 2008 също представиха много удобна технология, която може значително да опрости работата на управлението на драйверите за печат на терминални сървъри. Можете да се запознаете с него в статията Лесен печат в Windows 2008 Server