在 Windows PowerShell 中,可以使用 WMI 和来自 WSH 的 WScript.Network COM 对象来管理打印机。我们将同时使用这两种工具演示特定的任务。

列出打印机连接

列出安装在计算机上的打印机的最简单方法是使用 WMI Win32_Printer 类:

Get-WmiObject -Class Win32_Printer -ComputerName

也可以使用 WScript.Network COM 对象(通常用在 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")




目录