在 Windows PowerShell 中使用 WMI 以及 WSH 提供的 WScript.Network COM 物件就可以進行印表機的管理。底下將交互運用這兩種工具來示範特定的工作。

列舉印表機連線

若要列舉電腦上安裝的印表機,最簡單的方法是使用 WMI Win32_Printer 類別:

Get-WmiObject -Class Win32_Printer -ComputerName

您也可以使用 WSH 指令碼常用的 WScript.Network COM 物件來列舉印表機:

(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")




目錄