druide83
Goto Top

Printerport mit Powershell anlegen

Morgen allerseits,

habe mal wieder ein Skriptproblem. Will remote einen Drucker auf einem Printserver anlegen.
Dies mit folgendem Code:

$printername = "pr-3-000099"  

function CreatePrinterPort { 

$port = ([WMICLASS]"\\Server\ROOT\cimv2:Win32_SNX SPM Direct Port").createInstance()   
$port.Name= "IP@$printername"  
$port.SNMPEnabled=$false 
$port.Protocol=2 
$port.HostAddress= $printername
$port.Put() 
}

function CreatePrinter { 

$print = ([WMICLASS]"\\Server\ROOT\cimv2:Win32_Printer").createInstance()   
$print.drivername = "RICOH PCL6 UniversalDriver"    
$print.PortName = "IP@$printername"  
$print.Shared = $true 
$print.Published = $false 
$print.Sharename = $printername ] 
$print.DeviceID = $printername
$print.Put() 
}
CreatePrinterPort
CreatePrinter

1. Problem ist der SNX Port, den er mir nicht anlegen will. Wenn ich an der Stelle den TCP IP Port wähle, funktioniert zumindest die Portanlage, es muss aber der SNX sein.
2. Problem ist, dass er mir den Drucker nicht anlegt. Das Skript wirft dann die Fehlermeldung Exception calling "Put" with "0" argument(s): "Allgemeiner Fehler "

Hoffe es kann mir jemand dabei helfen

Grüße

Content-Key: 322291

Url: https://administrator.de/contentid/322291

Printed on: April 26, 2024 at 19:04 o'clock

Mitglied: 131381
131381 Nov 28, 2016 updated at 10:18:32 (UTC)
Goto Top
Moin,
Win32_SNX SPM Direct Port
so wird der Port niemals heißen, schon wegen der Leerzeichen.
Also besorg dir die richtige Bezeichnung über WMI, z.B. mit wbemtest.
Drucker per PowerShell auf Printserver installieren

Gruß
Member: Druide83
Druide83 Nov 28, 2016 at 10:52:36 (UTC)
Goto Top
Hi und danke für deine Antwort.

Das hatte ich mir schon gedacht. Leider weiß ich jetzt aber nicht, wie ich wbemtest richtig einsetzen soll, damit ich auf den richtigen Portnamen komme. Könntest du mir hier bitte weiter helfen?
Den Beitrag aus deinem Link kenne ich schon, aber da steht ja die Verbindung eines Druckers mit dem TCPIP Port drin, oder habe ich da was übersehen?
Member: Druide83
Druide83 Nov 28, 2016 at 11:42:20 (UTC)
Goto Top
Kann es sein, dass das garnicht geht? Kann unter den Ports keinen SNX... finden. Diesen kann ich aber bei der manuellen Anlage auswählen.
Da es sich um einen SecurePrint Port von Ricoh handelt, weiß ich nicht ob das so geht.
Member: AnkhMorpork
AnkhMorpork Nov 28, 2016 at 11:49:42 (UTC)
Goto Top
Zitat von @Druide83:

Hi und danke für deine Antwort.

Das hatte ich mir schon gedacht. Leider weiß ich jetzt aber nicht, wie ich wbemtest richtig einsetzen soll, damit ich auf den richtigen Portnamen komme. Könntest du mir hier bitte weiter helfen?

PS-Konsole öffnen
wbemtest.exe eingeben
"Verbinden", root\cimv2 (ist die Vorgabe), "Verbinden"
"Klassen aufzählen", "Rekursiv für alle Klassen"
Du wirst mit einer Aufzählung erschlagen und kannst Eigenschaften auslesen.

Ist ein wenig gewöhnungsbedüftig, aber nach etwas Übung geht das schon.

Ankh
Member: Druide83
Druide83 Nov 28, 2016 updated at 12:28:31 (UTC)
Goto Top
Danke, da finde ich leider nichts was SNP... usw beinhaltet.
Bei der manuellen Einrichtung kann dieser aber ausgewählt werden.

UPDATE: Was ich gerade noch bei der manuellen Anlage der Printer festgestellt habe ist, dass wir in der Druckerverwaltung über den Menüpunkt neuen anschluss erstellen gehen. Hier wird der Fehler liegen. Muss ich mal weiter nachforschen, ob man den Anschluss auch per Skript anlegen kann.
Mitglied: 131381
131381 Nov 28, 2016 at 13:08:21 (UTC)
Goto Top
Member: Druide83
Druide83 Nov 28, 2016 at 13:19:15 (UTC)
Goto Top
Danke aber dein Link funktioniert leider nicht
Mitglied: 131381
131381 Nov 28, 2016 updated at 13:31:53 (UTC)
Goto Top
Geht hier überall einwandfrei...
Zufällig bei der Telekom? Die hat ja im Moment massiv DNS Probleme -> DNS wechseln.
Member: Druide83
Druide83 Nov 28, 2016 at 13:33:57 (UTC)
Goto Top
Nein, nicht bei der Telekom. Jetzt gehts komischerweise auch.
Ich glaub ich lass das mit dem Skript bleiben.
Das wird mit langsam zu kompliziert.

Aber vielen Dank für die Hilfe
Mitglied: 131381
131381 Nov 28, 2016 updated at 13:36:30 (UTC)
Goto Top
*Koppschüttel*
Dran bleiben jung face-wink Nur die harten komn in Garten face-smile
Programmieren is nichts für Weicheier.
Member: Druide83
Druide83 Nov 28, 2016 at 14:39:46 (UTC)
Goto Top
Ja, da hast du recht. Wollte das Skript eigentlich nur kurz für einen Kollegen schreiben, habe aber schon zu viel Zeit investiert.

Die Neugier hat mich aber noch ein bisschen weiter machen lassen.

Ich kann den Anschluss und Drucker auch über die Printer Befehle der Powershell installieren (Add-PrinterPort und Add-Printer)
Hier kann ich schon mal den Treiber mitgeben, was alles super funktioniert.

Nur das mit dem PortMonitor funktioniert leider immer noch nicht. Leider hilft mir dein Link da auch nicht weiter, da dies meinen bisherigen Horizont übersteigt. Ich weiß nicht mal wie ich diese Funktion Addmonitor verwenden soll.
Sorry
Mitglied: 131381
131381 Nov 28, 2016 at 15:12:11 (UTC)
Goto Top
Ich dachte eher an die erste Codezeile face-smile