Drucker installieren inklusive Treiber mit PowerShell
Mit PowerShell lassen sich einige Prozesse automatisieren, unter anderem auch das Drucker installieren. Aber hierzu gehören natürlich auch das Installieren von Treibern und das Anlegen des Drucker Ports. Wie das mit PowerShell mit Hilfe eines Printserver erledigt werden kann, zeigen wir in diesem Beitrag.
Freigegebenen Drucker eines Printservers installieren
Ist im Netzwerk ein Druckerserver im Einsatz, so ist das Installieren eines Druckers auf dem Windows Client ein Kinderspiel. Unter PowerShell gibt es das Cmdlet Add-Printer
welchem der Parameter -ConnectionName
übergeben werden kann. Somit weiß PowerShell, dass es sich um einen Netzwerkdrucker handelt.
Add-Printer -ConnectionName \\printserver\druckername
Das Bereitstellen der Treiber und der Port-Konfigurationen übernimmt in diesem Fall der Printserver. Das ist somit die einfachste Methode unter Windows einen Drucker installieren zu lassen.
Lokalen Drucker installieren mit PowerShell
Man hat allerdings nicht immer das Glück einen Printserver zur Verfügung zu haben. Der häufigste Fall ist wohl das Installieren eines lokalen Druckers auf einem Windows Betriebssystem. Auch hier kann PowerShell alle notwendigen Schritte erledigen. Die einzelnen Schritte sind hier zusammengefasst:
- Treiber zu Windows Treiber-Store hinzufügen
- Drucker-Treiber installieren
- Drucker-Port erstellen
- Drucker installieren
Treiber zu Store hinzufügen
Windows besitzt unter folgendem Pfad den so genannten Treiber-Store. Dieser Treiber Store besitzt schon viele Treiber, aber nicht alle, denn es gibt weltweit einfach zu viele verschiedene Geräte.
C:\Windows\System32\DriverStore\FileRepository
Das Windows interne Tool pnputil fügt den Druckertreiber zum Windows Treiber Store hinzu, sodass wir diesen in den nachfolgenden Schritten installieren können. Achtung: pnputil installiert nicht den Treiber, sondern fügt diesen lediglich zum Store hinzu. Hierzu nutzt man folgenden Befehl, welcher unter CMD und PowerShell funktioniert:
pnputil.exe /a "\\yourshare\HPPrinter\*.inf"
Wurde dieser Befehl ausgeführt, steht dem Installieren des Drucker-Treibers mit PowerShell nichts mehr im Weg.
Drucker-Treiber installieren
Mit pnputil wurde der Treiber eben in den Store importiert. Nun ist es mit PowerShell möglich den Druckertreiber installieren zu lassen. Hierzu wird das Cmdlet Add-PrinterDriver
verwendet, mit der Angabe des Namens für den Treiber und die zu verwendende INF-Datei.
Add-PrinterDriver -Name "HP OfficeJet 8000 series PCL6" -InfPath "C:\Windows\System32\DriverStore\FileRepository\YOURDRIVERPATH\YOURINF.inf"
Es ist durchaus nicht einfach die INF-Datei auf Anhieb zu finden, beziehungsweise zu ermitteln, da Treiber-Dateien oft einen “wirren” Namen haben.
Drucker-Port erstellen
Um einen Drucker installieren zu können, benötigt man neben dem Treiber auch einen Port, über den der Drucker kommunizieren kann. In der Regel wird hier die IP-Adresse des Druckers verwendet, wenn es sich um einen Netzwerkdrucker handelt. Unter PowerShell gibt es auch für den Port ein extra Cmdlet Namens Add-PrinterPort
. Hier muss der Port-Name und die IP-Adresse angegeben werden um den Port installieren zu können.
Add-PrinterPort -Name "PORT-NAME" -PrinterHostAddress "192.168.178.80"
Natürlich kann der Name frei gewählt werden und die IP-Adresse muss mit der IP des Drucker übereinstimmen. Ist dieser PowerShell Befehl abgesetzt, so wurde der Drucker Port installiert, beziehungsweise angelegt.
Drucker installieren
Nachdem wir den Treiber installiert haben und der Drucker Port angelegt wurde, kann nun der Drucker installiert werden. Auch hier verwendet man das PowerShell Commandlet Add-Printer
. Hier müssen allerdings weitere Parameter angegeben werden:
- -DriverName (Name des Treibers)
- -Name (Name des Druckers)
- -PortName (Name des Ports)
Add-Printer -DriverName "HP OfficeJet 8000 series PCL6" -Name "HP OfficeJet 8000" -PortName "PORT-NAME"
Wurden mit PowerShell alle Schritte durchgeführt, so wurde der Drucker inklusive Treiber und Port auf dem Windows Betriebssystem installiert.
Natürlich können alle Befehle kombiniert werden, damit man so wenig wie möglich Tippen muss. 🙂