Ich habe Probleme beim Auflisten aller Drucker auf einem Computer mit Powershell.
Wir haben ein Batch-Skript, das Drucker pro Computer mithilfe von PrintUI hinzufügt / entfernt / auflistet.
Ich kann PrintUI verwenden, um die Drucker aufzulisten.
rundll32 printui.dll,PrintUIEntry /ge /c"%UNC-NAME%"
Dadurch werden nur die Drucker pro Computer aufgelistet, während ...
Get-WMIObject -Class Win32_Printer -ComputerName $ComputerName
listet alle Drucker in WMI auf.
Im obigen Beispiel habe ich ein System mit 3 Druckern, wenn ein Benutzer angemeldet ist. WMI siehe 2 davon, PrintUI siehe 1.
Ich bin verblüfft, wie ich sie ALLE auflisten kann! Damit kann ich sowohl "pro Computer" als auch "lokale" Drucker per Skript überwachen / hinzufügen / entfernen
rundll32 printui.dll,PrintUIEntry /ga /c\\PCName /n\\PrintSpooler\P23S
wird der Netzwerkdrucker für alle Benutzer verfügbar, die sich anmelden zu PCNAME