iceage
Goto Top

Bei autom. Druckerinstallation mit prnmgr.vbs findet er nie den Pfad od. die inf. Datei

Hallo Leute

ich bin dabei, eine Batchdatei zu erstellen, welche autom. nach Eingabe der IP & des Druckermodells den Port & den Treiber inst.

Soweit funktioniert es z.B. mit HP 2100 Treibern einwandfrei. Wenn ich jedoch einen neuen Treiber verwende, z.B. Konica Minolta C250 PS, meldet er immer wieder, dass die inf. Datei nicht korrekt sei. Wenn ich mit der rechten Maustaste auf die Inf Datei klicke & dann auf installieren gehen, funktioniert es im Anschluss einwandfrei, da der Treiber bereits im System ist. Treiber Modell & Pfad sind aber richtig angegeben

Hier ein Beispiel


regsvr32 prnadmin.dll
cscript portmgr.vbs -a -h 192.168.0.11 -p IP_192.168.0.11 -t raw -n 9100
cscript prnmgr.vbs -a -b "TKM C250 PS" -m "KONICA MINOLTA C250/C250P PS" -r "IP_192.168.0.11" -p "t:\prnadmin\treiber" -f c250ps.inf

Rechner: XP Prof / SP2


jemand bereits Erfahrungen mit diesem vbs Script

oder gibt es eine andere Moeglichkeit den Treiber automatisiert per batch zu installieren??

Vielen Dank im Voraus

Content-ID: 33118

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

Ausgedruckt am: 24.11.2024 um 08:11 Uhr

IceAge
IceAge 30.05.2006 um 13:56:18 Uhr
Goto Top
Hallo Leute,

mittlerweile bin ich wieder da, allerdings noch kein einziger Kommentar... Hat sich denn noch niemand mit diesem Thema beschäftigt??
IceAge
IceAge 21.06.2006 um 18:54:27 Uhr
Goto Top
Hallo nocheinmal,

habe mittlerweile auch mit prndrvr.vbs versucht den Treiber automatisiert zu installieren, allerdings ohne Erfolg. Hier taucht der Win32 Fehlercode 87 auf...

Kann es sein, dass die VBS Scrpite nicht mit allen Treibern funktionieren??
Biber
Biber 21.06.2006 um 22:58:02 Uhr
Goto Top
Moin IceAge,

Kann es sein, dass die VBS Scrpite nicht mit allen Treibern funktionieren??

So ähnlich... das Zusammenspiel zwischen den VBS-Schnipseln und den Treibern ist nicht sehr robust und manchmal funktioniert es z.B. mit HP Laser-Druckern und manchmal mit Kyocera oder Epson... oder umgekehrt.

Der Fehler 87 sagt ja nur aus, dass "ein Parameterfehler vorliegt" (wenn ich mal die schonenden Schnörkel weglasse).

Abhilfe oder zumindest Versuche, die schon geholfen haben:

1) Absolute Pfade zu allem, was ausgerufen wird, also
cscript prnmgr.vbs -a -b "TKM C250 PS" -m "KONICA MINOLTA C250/C250P PS" -r "IP_192.168.0.11" -p "\\serverX\prnadmin\treiber" -f c250ps.inf  


2) Mehrfach beobachtet: Einige Installationen funktionierten, wenn alle Backslashes in Pfadangaben doppelt eingegeben worden. Also "C:\\install\\Epson" statt "C:\install\Epson" usw. Kein Witz.

3) Unbedingt überprüfen, ob bei den Namen-mit-Leerzeichen alle Leerzeichen an der richtigen Stelle und in der richtigen Anzahl und auch keine TABs sind (also bei so etwas wie "TKM C250 PS" und "KONICA MINOLTA C250/C250P PS" etc.)

Patentlösung hab ich auch keine; dieses Zusammenspiel von gemeinschaftlicher Druckertreiber- und Betriebssystem-installation ist einfach grottenschlecht suboptimal implementiert.

Gruß
Biber
IceAge
IceAge 22.06.2006 um 10:58:22 Uhr
Goto Top
Hi Biber,

vielen Dank für deine Tipps. Leider brachten Sie auch keine Besserung. Ich vermute, dass es am Treiber liegt. Ich werd ich dann wohl od. uebel bei bestimmten Modellen manuell hinzufuegen muessen. Habe die Bezeichnungen nocheinmal überprueft u. auch die Pfadangaben mit absoluten Pfaden u. "\\" getestet.

Trotzdem vielen Dank!

Werde mir noch ein paar Gedanken drueber machen, bei Erfolg melde ich mich.....
31591
31591 22.06.2006 um 12:20:28 Uhr
Goto Top
Die Angabe von kompletten Pfaden - auch für die INF-Datei - hilft oft!

Hier ein Beispiel, wo z.B. der Treiber für DesignJet4500 nicht installiert wird
HP arbeitet da mit vielen %Variablen$ und überfordert wohl prnmgr.vbs hoffnungslos!
@echo off

if exist %SystemRoot%\System32\prnadmin.dll goto LOS!
::prnadmin.dll registrieren
copy prnadmin.dll %SystemRoot%\System32
regsvr32 %SystemRoot%\System32\prnadmin.dll
:LOS!

echo.
echo Ports erstellen?
pause

set PortName=DesignJet1050_IP
set IPAdresse=192.168.115.70
cscript portmgr.vbs Nologo -a -c "" -p "%PortName%" -h "%IPAdresse%" -me -y public -i 1 -t raw -n 9100

set PortName=DesignJet4500_IP
set IPAdresse=192.168.115.69
cscript portmgr.vbs
Nologo -a -c "" -p "%PortName%" -h "%IPAdresse%" -me -y public -i 1 -t raw -n 9100

echo.
echo Treiber installieren?
pause

set PrinterName=DesignJet1050
set PortName=DesignJet1050_IP
set ModellName=HP DesignJet 1050C by HP
set DriverPath=T:\Treiber\Plotter\HP1050\Win2000
set INFfile=T:\Treiber\Plotter\HP1050\Win2000\DSGJ1000.inf
cscript prnmgr.vbs Nologo -a -c "" -b "%PrinterName%" -m "%ModellName%" -p "%DriverPath%" -r "%PortName%" -f "%INFfile%"

set PrinterName=DesignJet4500
set PortName=DesignJet4500_IP
set ModellName=HP Designjet 4500 HPGL2/RTL
set DriverPath=T:\Treiber\Plotter\HP4500\2K-XP
set INFfile=T:\Treiber\Plotter\HP4500\2K-XP\hpi4500h.inf
cscript prnmgr.vbs
Nologo -a -c "" -b "%PrinterName%" -m "%ModellName%" -p "%DriverPath%" -r "%PortName%" -f "%INFfile%"


echo.
echo Eigenschaften zuweisen?
pause

set PrinterName=DesignJet1050
echo %PrinterName% ....
rundll32 printui.dll,PrintUIEntry /Sr /n "%PrinterName%" /a "%PrinterName%.dat" 2 7 c d g u

set PrinterName=DesignJet4500
echo %PrinterName% ....
rundll32 printui.dll,PrintUIEntry /Sr /n "%PrinterName%" /a "%PrinterName%.dat" 2 7 c d g u
Gruß
IceAge
IceAge 03.07.2006 um 22:10:25 Uhr
Goto Top
Hi Biber u. Andilao,

ich habe mich jetzt in der letzten Zeit vermehrt mit meinem Batch-Skript beschaeftigt und habe ein paar interessante Beobachtungen gemacht...

- Pfadangaben mit doppelten "\\" müssen sein
- bei den INI Fileangaben muss ein kompletter Pfad angegeben werden

mein Skript funktioniert mit meinen PostScript Treibern einwandfrei, nur bei den PCL Treibern scheint es irgendwo noch zu hapern.... sobald ich wieder etwas Zeit finde, werde ich mich diesem Problem auch noch zu wenden..

Wenn ich mein Skript irgendwann mal komplett habe, kann ich es bei Bedarf posten....

Vielen Dank fuer eure Unterstuetzung!!!

Mit freundl. Gruessen

ICE
31591
31591 03.07.2006 um 22:41:56 Uhr
Goto Top
Eine kleine Anmerkung noch:

Mein Batch funktioniert so wie gepostet, allerdings mit einem Zusatz, den es gibt inf-Dateien mit dermaßen verschachtelten Variablen-Zuweisungen, dass prnmgr.vbs damit nicht mehr zurechtkommt. Den Fehler hatte ich nur nicht bemerkt, weil ich den Treiber nach der manuellen Installation nicht mehr entfernt hatte.

Dann hilft es ungemein, den Treiber per printui.dll einfach vorher nur zu installieren:

rundll32 printui.dll,PrintUIEntry /ia /m "%ModellName%" /f "%INFfile%"

und dann erst den Drucker anzulegen:

cscript prnmgr.vbs //Nologo -a -c "" -b "%PrinterName%" -m "%ModellName%" -p "%DriverPath%" -r "% PortName%" -f "%INFfile%"

Gruß
Biber
Biber 03.07.2006 um 23:02:40 Uhr
Goto Top
@IceAge und andilao

..auch ich lese weiter höchst interessiert mit...

Diese prnmgr.vbs ist für mich auch eins der letzten ungelösten Geheimnisse neben Schröders Haarfarbe oder des Erfolgsrezepts von Thomas Gottschalk.
31591
31591 03.07.2006 um 23:51:10 Uhr
Goto Top
fast vergessen, bei "unerklärlichen Problemen" etc. etc. sollte man die aktuellste Version der prnmgr.vbs und prnadmin.dll verwenden. Das sollte die vom "Windows Server 2003 Deployment Kit" sein, in Zeile 8: ' prnmgr.vbs - printer script for Windows .NET Server 2003, läuft ab Win 2000 ohne Probleme.
IceAge
IceAge 14.02.2007 um 13:49:05 Uhr
Goto Top
Schlussbemerkung:

Hallo ihr 2, also zwischenzeiltlich habe ich eine CD erstellt, mit der ich automatisiert Drucker installieren kann. Nach Eingabe der IP, des Druckermodells & des Druckernamens erfolgt die Installation innerhalb kürzester Zeit.

Wie schon vorher beschrieben funktioniert es mit PostScript Treibern perfekt, bei div. PCL Treibern müssen die Treiber manuell geladen werden.

Weiterhin ist es nun auch möglich, z.B. alle nicht verwendeten IP Adressen mit einem Klick zu entfernen, Testseiten zu erstellen, mit Netzwerkdruckern zu verbinden....

Bei Fragen rundum diese Skripte einfach mal posten, dann kann ich versuchen weiter zu helfen.....
basi79
basi79 23.08.2007 um 10:53:53 Uhr
Goto Top
Coool.. und wie kommt man an so eine CD ran..??

Ist es möglich mir ein ISO zuschiken oder zu veröffentlichen..??

Gruß

Basi
oliverbuck
oliverbuck 15.11.2007 um 17:05:04 Uhr
Goto Top
Ja die CD wäre toll...
face-smile oli
gandralf
gandralf 24.01.2011 um 15:11:34 Uhr
Goto Top
Tach zusammen, bin gerade auf diesen Thread gestossen, und finde er lässt noch Fragen offen (mir hat er nicht wirklich geholfen). Habe daher selbst etwas herumprobiert und das Problem (für mich) gelöst:

Zitat von @IceAge:
bei div. PCL Treibern müssen die Treiber
manuell geladen werden.

Das liegt wohl daran, dass manche Treiber unsigniert sind.

Diese kann man laut MS nicht per "cscript prndrvr.vbs" und auch nicht mit "cscript prnmngr.vbs" installieren sondern nur mit "rundll32 printui.dll,PrintUIEntry".

Ich hab das bei mir quickndirty wie folgt gelöst:


rundll32 printui.dll,PrintUIEntry /ia /m "Evolis Pebble" /h "Intel" /v "Windows 2000 oder XP" /f "\\SQL\CDH\Druckereinrichtung\NT2000\Youn.inf" /q

cscript %systemroot%\system32\prnport.vbs -a -r 4L1 -h 192.168.0.4 -o lpr -q L1 -2e

cscript %systemroot%\system32\prnmngr.vbs -a -p "Evolis Pebble" -m "Evolis Pebble" -r 4L1


geht super, allerdings kommt auf die Weise bei besagtem unsigniertem Treiber noch die typische Fehlermeldung aufgepoppt und man muss noch "Installation fortsetzen" auswählen, damit es weitergeht.

Will man diese Meldung auch noch "killen", so kann man das über die (Domänen-)Gruppenrichtlinien tun: Computerkonfiguration>Windows-Einstellungen>Sicherheitseinstellungen>Lokale Richtlinien>Sicherheitsoptionen

Hier sucht man die Richtlinie "Geräte: Verhalten bei der Installation von nichtsignierten Treibern" und legt die Einstellung auf "Ohne Warnung akzeptieren" fest. Nach dem nächsten Neustart der jeweiligen Clients kommt die Meldung dort nicht mehr.