In Windows PowerShell können Sie Drucker mit WMI und dem WScript.Network-COM-Objekt von WSH verwalten. Um bestimmte Aufgaben zu veranschaulichen, wird an dieser Stelle eine Kombination aus beiden Tools verwendet.
Auflisten von Druckerverbindungen
Am einfachsten können die auf einem Computer installierten Drucker mit der Win32_Printer-WMI-Klasse aufgelistet werden.
Get-WmiObject -Class Win32_Printer -ComputerName
Sie können die Drucker auch mit dem WScript.Network-COM-Objekt aufführen, das für gewöhnlich in WSH-Skripts verwendet wird:
(New-Object -ComObject WScript.Network).EnumPrinterConnections()
Da mit diesem Befehl eine einfache Zeichenfolgenauflistung von Portnamen und Gerätenamen von Druckern ohne Unterscheidung in der Bezeichnung zurückgegeben wird, erschwert dies die Interpretation.
Hinzufügen eines Netzwerkdruckers
Zum Hinzufügen eines neuen Netzwerkdruckers verwenden Sie WScript.Network:
(New-Object -ComObject WScript.Network).AddWindowsPrinterConnection("\\Printserver01\Xerox5")
Festlegen eines Standarddruckers
Wenn Sie WMI als Standarddrucker festlegen möchten, suchen Sie den Drucker in der Win32_Printer-Auflistung, und rufen Sie dann die SetDefaultPrinter-Methode auf:
(Get-WmiObject -ComputerName . -Class Win32_Printer -Filter "Name='HP LaserJet 5Si'").SetDefaultPrinter()
Die Verwendung von WScript.Network ist ein wenig einfacher, da die zugehörige SetDefaultPrinter-Methode nur den Druckernamen als Argument akzeptiert:
(New-Object -ComObject WScript.Network).SetDefaultPrinter('HP LaserJet 5Si')
Entfernen einer Druckerverbindung
Zum Entfernen einer Druckerverbindung verwenden Sie die WScript.Network RemovePrinterConnection-Methode:
(New-Object -ComObject WScript.Network).RemovePrinterConnection("\\Printserver01\Xerox5")