Werken met PrintersWorking with Printers

U kunt Windows PowerShell gebruiken om printers te beheren met behulp van WMI en de WScript.Network COM-object uit WSH.You can use Windows PowerShell to manage printers by using WMI and the WScript.Network COM object from WSH. We gebruiken een combinatie van beide hulpprogramma's voor het demonstreren van specifieke taken.We will use a mix of both tools to demonstrate specific tasks.

Printerverbindingen van aanbiedingListing Printer Connections

De eenvoudigste manier om een lijst van de printers die zijn geïnstalleerd op een computer is met de WMI Win32_Printer klasse:The simplest way to list the printers installed on a computer is to use the WMI Win32_Printer class:

Get-WmiObject -Class Win32_Printer -ComputerName

U kunt ook de printers weergeven met behulp van de WScript.Network COM-object dat doorgaans in WSH scripts gebruikt wordt:You can also list the printers by using the WScript.Network COM object that is typically used in WSH scripts:

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

Omdat deze opdracht een verzameling eenvoudige tekenreeks poortnamen en printer apparaat zonder eventuele onderscheidende labels retourneert, is het niet eenvoudig worden geïnterpreteerd.Because this command returns a simple string collection of port names and printer device names without any distinguishing labels, it is not easy to interpret.

NetwerkprintersAdding a Network Printer

U kunt een nieuwe netwerkprinter toevoegen WScript.Network:To add a new network printer, use WScript.Network:

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

Instellen van eenSetting a Default Printer

Als u wilt gebruiken WMI om in te stellen van de standaardprinter, de printer zoeken in de Win32_Printer verzameling en roep daarna de SetDefaultPrinter methode:To use WMI to set the default printer, find the printer in the Win32_Printer collection and then invoke the SetDefaultPrinter method:

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

WScript.Network is enigszins eenvoudiger is om te gebruiken, omdat er een SetDefaultPrinter methode die de printernaam als argument:WScript.Network is a little simpler to use, because it has a SetDefaultPrinter method that takes only the printer name as an argument:

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

Een verbinding verwijderenRemoving a Printer Connection

U kunt een printerverbinding verwijderen met de WScript.Network RemovePrinterConnection methode:To remove a printer connection, use the WScript.Network RemovePrinterConnection method:

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