Windows PowerShell можно использовать для управления из WSH принтерами с помощью WMI и объекта WScript.Network COM. При демонстрации выполнения отдельных задач будут использованы оба типа средств.

Получение списка подключений к принтерам

Получить список принтеров, установленных на компьютере, проще всего при помощи класса WMI Win32_Printer:

Get-WmiObject -Class Win32_Printer -ComputerName

Создать список принтеров можно также при помощи COM-объекта WScript.Network, который обычно используется в WSH-сценариях:

(New-Object -ComObject WScript.Network).EnumPrinterConnections()

Эта команда возвращает простую коллекцию строк имен портов и принтерных устройств без различительных меток, что затрудняет интерпретацию.

Добавление сетевого принтера

Чтобы добавить новый сетевой принтер, используйте объект WScript.Network:

(New-Object -ComObject WScript.Network).AddWindowsPrinterConnection("\\Printserver01\Xerox5")

Установка принтера по умолчанию

Чтобы установить принтер по умолчанию при помощи службы WMI, найдите принтер в коллекции Win32_Printer и вызовите метод SetDefaultPrinter:

(Get-WmiObject -ComputerName . -Class Win32_Printer -Filter "Name='HP LaserJet 5Si'").SetDefaultPrinter()

Несколько проще работа с объектом WScript.Network, у которого есть метод SetDefaultPrinter, принимающий в качестве аргумента только имя принтера:

(New-Object -ComObject WScript.Network).SetDefaultPrinter('HP LaserJet 5Si')

Удаление подключения к принтеру

Чтобы удалить подключение принтера, используйте метод WScript.Network RemovePrinterConnection:

(New-Object -ComObject WScript.Network).RemovePrinterConnection("\\Printserver01\Xerox5")




Содержание