Работа с драйверами принтера. Часть 1

Для извлечения драйверов из системы можно использовать специальные программы, но зачастую не все из них отображают полный список  доступных в системе устройств.
Со списком таких программ мы вы можете ознакомиться на другом сайте,
а в этой заметке давайте посмотрим на расширенный набор действий с драйверами принтеров, такие как добавление\удаление и установка драйвера \удаление драйвера принтера.
Переходим в оснастку Управление печатью ( printmanagement.msc )

  • Смотрим где находится файл драйвера с расширением .inf, переходим к нему, и копируем все содержимое папки через контекстное меню в любую временную папку
Таким же образом можно извлечь для дальнейшего использования любые драйвера из C:\Windows\System32\DriverStore\FileRepository
  • Добавляем драйвер в репозиторий


Так же добавить драйвер в репозиторий можно через Powershell:

$DriverPath = C:\Temp\Xerox_Global_Print_Driver_PCL6\x2univx.inf
PNPUtil.exe -i -a $DriverPath

Удобно будет расположить набор драйверов на сетевом диске и добавлять их при необходимости в репозиторий каждого компьютера скриптом. Желательно удаленно, используя PSexec. Такой скрипт рассмотрим в следующей заметке.

  • Теперь можно провести установку принтера, для которого драйвер будет автоматически установлен из репозитория.

Установку можно произвести любыми доступными средствами, но я привел в пример именно установку через оснастку Управление печатью, т.к. в ней присутствует дополнительный шаг с выбором драйвера принтера из списка ранее добавленных драйверов.

При необходимости то же самое можно выполнить при помощи Powershell:

$name = 'Xerox Workcentre 3325'
$ip = '192.168.X.X'
$DriverName = 'Xerox Global Print Driver PCL6'
$DriverPath = 'C:\Windows\System32\DriverStore\FileRepository\sxr3m.inf_amd64_30632c60582e2c69\sxr3m.inf'
rundll32 printui.dll,PrintUIEntry /u /if /b $name /f $DriverPath /r $ip /m $DriverName
 Удаление принтера вместе с драйвером

Сначала необходимо удалить принтер любым доступным способом.
А вот при удалении драйвера может возникнуть ошибка, из-за того что драйвер в настоящий момент задействован. Что бы ее решить нужно отключить службу «Диспетчер печати» и выполнить повторное удаление драйвера

sc \\server stop spooler & sc \\server start spooler

 

Добавить комментарий

Ваш адрес email не будет опубликован.