Vous pouvez utiliser Windows PowerShell pour gérer des imprimantes à l'aide de WMI et de l'objet COM WScript.Network de WSH. Nous utiliserons une combinaison de ces deux outils pour illustrer des tâches spécifiques.

Listage des connexions d'imprimantes

La façon la plus simple de répertorier les imprimantes installées sur un ordinateur consiste à utiliser la classe WMI Win32_Printer :

Get-WmiObject -Class Win32_Printer -ComputerName

Vous pouvez également les répertorier à l'aide de l'objet COM WScript.Network généralement utilisé dans les scripts WSH :

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

Étant donné que cette commande retourne une simple collection de chaînes de noms de ports et de noms d'imprimantes sans libellés caractéristiques, son interprétation n'est pas aisée.

Ajout d'une imprimante réseau

Pour ajouter une nouvelle imprimante réseau, utilisez WScript.Network :

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

Définition d'une imprimante par défaut

Pour utiliser WMI pour définir l'imprimante par défaut, recherchez l'imprimante dans la collection Win32_Printer, puis appelez la méthode SetDefaultPrinter :

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

WScript.Network est un peu plus simple d'utilisation, car il dispose d'une méthode SetDefaultPrinter qui prend uniquement le nom d'imprimante en tant qu'argument :

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

Suppression d'une connexion d'imprimante

Pour supprimer une connexion d'imprimante, utilisez la méthode WScript.Network RemovePrinterConnection :

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




Table des matières