После перемещения системных блоков компьютеров или соответственно печатающих устройств, да и просто тестовых инсталляций-деинсталляций в системе остаются неиспользуемые драйвера принтеров. Удалить принтер, используя оснастку “Принтеры и факсы” недостаточно. Если, спустя продолжительное время, потребовалась вновь установка (возможно и версия драйвера к этому времени поновее и порт может быть иным), автоматически “подхватится” драйвер имеющийся в системе. Временами необходимо избежать этой ситуации и выполнить полную новую инсталляцию драйвера. Это несложно сделать с помощью prndrvr.vbs, как правило, он находится в папке WINDOWS\system32\. Скрипт имеет хорошую справку и позволяет просматривать и управлять драйверами принтеров в системе.
Его можно использовать и для удаленного просмотра-удаления принтеров. Особенностью приводимого ниже скрипта - предварительное отключение firewall рабочей станции (в своих локальных сетях их отключаю только для выполнения административных функций)
listprinterdrivers.cmd
@echo offclsif "%~1"=="" goto HELPif "%~1"=="?" goto HELPif "%~1"=="/?" goto HELPif "%~1"=="-?" goto HELP:: считываю букву диска, которую система присвоила Flash-disk,:: с него запускаются эти командные файлы и на нем в каталоге:: х:\tools лежат вспомогательные программы,:: и добавляю к переменной %PATH% путь к этим программамset path=%~d0/tools;%path%:: передать параметром имя рабочей станцииpsexec \\%1 netsh firewall set opmode mode=disablecscript C:\WINDOWS\system32\prndrvr.vbs -l -s %1:: удалить не используемые принтераrem cscript C:\WINDOWS\system32\prndrvr.vbs -x -s %1psexec \\%1 netsh firewall set opmode mode=enableecho.echo.pausegoto :EOF:HELPecho.echo.echo Использование:echo.echo listprinterdrivers.cmd [station] или ?, /?, -?echo.echo где [station] - имя станцииecho.echo запускать из-под учетной записи с правами администратораecho.echo.pause:END
Комментариев нет:
Отправить комментарий