J'ai des problèmes énumérant toutes les imprimantes sur un ordinateur utilisant PowerShell.
Nous avons un script de lot qui ajoutera/supprimera/liste des imprimantes "par ordinateur" utilisant printuci.
Je peux utiliser princi pour répertorier les imprimantes.
rundll32 printui.dll,PrintUIEntry /ge /c"%UNC-NAME%"
Cela va lister uniquement les imprimantes par ordinateur, tandis que ...
Get-WMIObject -Class Win32_Printer -ComputerName $ComputerName
listera toutes les imprimantes de WMI.
Dans l'exemple ci-dessus, j'ai un système contenant 3 imprimantes, lorsqu'un utilisateur est connecté. WMI See's 2 d'entre eux, IRTUI Voir 1.
Je suis hébergé comment je peux les énumérer! Afin que je puisse script audit/ajouter/supprimer des imprimantes "par ordinateur" et "local"
imprimantes partagées
Get-Printer -ComputerName pc| where Shared -eq $true | fl Name
obtenir des imprimantes non partagées
Get-Printer -ComputerName pc | where Shared -eq $false | fl Name
obtenir des imprimantes mappées
Get-WMIObject Win32_Printer -ComputerName $env:COMPUTERNAME | where{$_.Name -like “*\\*”} | select sharename,name
obtenez toutes les imprimantes
Get-WMIObject Win32_Printer -ComputerName $env:COMPUTERNAME