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-ID: 322291

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

Ausgedruckt am: 22.11.2024 um 11:11 Uhr

131381
131381 28.11.2016 aktualisiert um 11:18:32 Uhr
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ß
Druide83
Druide83 28.11.2016 um 11:52:36 Uhr
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?
Druide83
Druide83 28.11.2016 um 12:42:20 Uhr
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.
AnkhMorpork
AnkhMorpork 28.11.2016 um 12:49:42 Uhr
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
Druide83
Druide83 28.11.2016 aktualisiert um 13:28:31 Uhr
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.
131381
131381 28.11.2016 um 14:08:21 Uhr
Goto Top
Druide83
Druide83 28.11.2016 um 14:19:15 Uhr
Goto Top
Danke aber dein Link funktioniert leider nicht
131381
131381 28.11.2016 aktualisiert um 14:31:53 Uhr
Goto Top
Geht hier überall einwandfrei...
Zufällig bei der Telekom? Die hat ja im Moment massiv DNS Probleme -> DNS wechseln.
Druide83
Druide83 28.11.2016 um 14:33:57 Uhr
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
131381
131381 28.11.2016 aktualisiert um 14:36:30 Uhr
Goto Top
*Koppschüttel*
Dran bleiben jung face-wink Nur die harten komn in Garten face-smile
Programmieren is nichts für Weicheier.
Druide83
Druide83 28.11.2016 um 15:39:46 Uhr
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
131381
131381 28.11.2016 um 16:12:11 Uhr
Goto Top
Ich dachte eher an die erste Codezeile face-smile