Installieren Sie Netzwerkdrucker über Batchdatei oder Befehlszeile in Windows 7/8 und Server 2008

Als Desktop-Administrator automatisiere ich gerne so viele Aufgaben wie möglich. Vor kurzem musste ich die Installation von Netzwerkdruckern in einer Windows 7- und Windows Server 2008-Umgebung automatisieren. Nachdem ich einige Handbücher durchgearbeitet hatte, fand ich eine Lösung zum Installieren von TCP / IP-Druckern über eine Stapeldatei. In diesem Tutorial werde ich das VBS-Skript beschreiben, das wir für die Port-Erstellung nutzen werden. Außerdem werde ich die Verwendung von rundll32 beschreiben, um Druckertreiber unbeaufsichtigt zu installieren und Drucker zu erstellen.

Moderne Windows-Betriebssysteme wie Windows 7, Windows 8 und Windows Server 2008 verfügen über umfangreiche integrierte Skriptwerkzeuge und -dienstprogramme. Die meisten Benutzer kennen diese Fähigkeiten jedoch nicht. Das folgende Handbuch enthält eine Datei example.txt, in der das generische Skript enthalten ist. Es enthält auch eine Erklärung zu jedem Schritt und wie das Skript an die eigene Umgebung angepasst werden kann.

Die folgenden Elemente werden als Beispiele verwendet:

- Ein Computer im Netzwerk 192.168.1.x
- Ein HP Laserjet M603 mit statischer IP-Adresse 192.168.1.200
- Ein Benutzerkonto, das VBS-Skripts ausführen kann (Administrator oder angegebene Skriptfähigkeiten).

1.Laden Sie den entsprechenden Druckertreiber für den zu installierenden Drucker herunter. In diesem Beispiel verwende ich den HP Universal Print Driver (PCL6), da er mit fast jedem HP-Drucker funktioniert. Laden Sie das neueste Paket auf der HP Website herunter.

2. Nach dem Herunterladen verwenden Sie 7-zip oder ein anderes Dekomprimierungswerkzeug, um die Treiberpakete zu extrahieren. Wir möchten sie eigentlich nicht installieren. Wir wollen sie nur extrahieren.

3. Gehen Sie zurück zu dem Ordner, in den Sie das Treiberpaket extrahiert haben. Nun müssen wir herausfinden, welche .inf-Datei den Treiber enthält, den wir installieren müssen, und auch, wie der Drucker in der .inf-Treiberdatei benannt ist. Dazu können wir den Drucker auf einem Computer installieren und dann in den Druckereigenschaften und auf der Registerkarte Erweitert nach dem Namen des Treibers suchen. Wir müssen dann nur die verwendete .inf-Datei finden.

In unserem HP-Beispiel gehen wir in den UPD-Ordner und dann in den PCL-Ordner. Hier verwenden wir die Datei hpcu118c.inf, in der HP Universal Printing PCL 6 den Namen des Treibers darstellt.

4. Laden Sie die Datei example.txt mit Notepad oder einem beliebigen Text-Viewer herunter und öffnen Sie sie.

Hier sehen wir folgendes:

cscript% WINDIR% \ System32 \ Printing_Admin_Scripts \ de-DE \ Prnport.vbs -a -r IP_192.168.1.200 -h 192.168.1.200 -o raw -n 9100


rundll32 printui.dll, Druckversion / ia / m "HP Universal Printing PCL 6" / f "C: \ Drucker \ HPUPD \ PCL \ hpcu118c.inf"


rundll32 printui.dll, PrintUIEntry / if / b „HP PRINTER1“ / f "C: \ Drucker \ HPUPD \ PCL \ hpcu118c.inf" / r "IP_192.168.1.200" / m "HP Universal Printing PCL 6"

Die erste Zeile, die mit "cscript" beginnt, verwendet ein integriertes VBS-Skript, um den TCP / IP-Druckerport auf dem Computer zu erstellen, der der IP-Adresse des Druckers entspricht.

Die zweite Zeile verwendet rundll32, um den HP Universal PCL 6-Druckertreiber zu installieren. Der Name hinter / m variiert je nach Druckerhersteller / Treiber und wie er in der entsprechenden INF-Datei referenziert wird. Der / f-Speicherort hängt auch davon ab, wo Sie Dateien haben. Sie können auch UNC-Pfade oder zugeordnete Netzlaufwerke verwenden (z. B. / f „\ Servername \ Ordner \ hpupd \ pcl \ hpcu118c.inf“).

Die dritte Zeile schließlich verwendet rundll32 und printui.dll, um den tatsächlichen Drucker im System zu erstellen. Der Name hinter / b wird beim Drucken in Geräten und Druckern und in Programmen angezeigt. Das / f ist derselbe Ort, den Sie in der vorherigen Zeile verwendet haben, und der Port hinter / r ist der, den Sie in der ersten Zeile erstellt haben.

5. Benennen Sie die Datei example.txt schließlich in example.bat um und führen Sie sie dann zum Testen aus. Ich empfehle immer, wenn möglich, eine Prüfung auf einer Nicht-Produktionsmaschine durchzuführen. Ihre Batchdatei kann so viele Drucker enthalten, wie Sie möchten. Meine typischen Batch-Dateien verfügen über vier bis 24 Drucker.

6.Zusätzliche Automatisierungen können das Kopieren des Treiberordners im Skript mithilfe von xcopy oder robocopy umfassen. Dies kann auch mit App-Implementierungs-Suites wie SCCM oder Zenworks verwendet werden, um Druckerinstallationen in Unternehmensumgebungen zu pushen.