Werken met printers in Windows
Dit voorbeeld is alleen van toepassing op Windows-platforms.
U kunt PowerShell gebruiken om printers te beheren met WMI en het WScript.Network COM-object van WSH.
Printerverbindingen weergeven
De eenvoudigste manier om de printers weer te geven die op een computer zijn geïnstalleerd, is door de WMI-Win32_Printer-klasse te gebruiken:
Get-CimInstance -Class Win32_Printer
U kunt de printers ook vermelden met behulp van het WScript.Network COM-object dat doorgaans wordt gebruikt in WSH-scripts:
(New-Object -ComObject WScript.Network).EnumPrinterConnections()
Omdat deze opdracht een eenvoudige tekenreeksverzameling van poortnamen en printerapparaatnamen retourneert zonder onderscheid te maken tussen labels, is het niet eenvoudig te interpreteren.
Een netwerkprinter toevoegen
Als u een nieuwe netwerkprinter wilt toevoegen, gebruikt u WScript.Network:
(New-Object -ComObject WScript.Network).AddWindowsPrinterConnection("\\Printserver01\Xerox5")
Een standaardprinter instellen
Als u WMI wilt gebruiken om de standaardprinter in te stellen, zoekt u de printer in de Win32_Printer verzameling en roept u vervolgens de methode SetDefaultPrinter aan:
$printer = Get-CimInstance -Class Win32_Printer -Filter "Name='HP LaserJet 5Si'"
Invoke-CimMethod -InputObject $printer -MethodName SetDefaultPrinter
WScript.Network is iets eenvoudiger te gebruiken, omdat deze een SetDefaultPrinter-methode heeft die alleen de printernaam als argument gebruikt:
(New-Object -ComObject WScript.Network).SetDefaultPrinter('HP LaserJet 5Si')
Een printerverbinding verwijderen
Als u een printerverbinding wilt verwijderen, gebruikt u de methode WScript.Network RemovePrinter Verbinding maken ion:
(New-Object -ComObject WScript.Network).RemovePrinterConnection("\\Printserver01\Xerox5")