13 Mai

DPInst Treiber Installation

Ich verwende DPInst (Driver Package Installer) gerne um Treiber, nachträglich per SCCM, zu verteilen und um Treiber für Geräte bereitzustellen, die während der Windows Installation nicht angeschlossen sind. DPInst besteht aus jeweils einer „.exe“-Datei für 32- und 64-Bit Windows. Das Tool ist unkompliziert und Arbeitet problemlos. Es gibt jedoch ein paar Dinge zu beachten. 

Update: Achtung! Die "dpinst.exe" ist im aktuellen WDK leider nicht mehr enthalten.

 

WDK installieren (um dpinst.exe zu erhalten)

 

Die Datei „dpinst.exe“ wird leider nicht separat zum Download angeboten. Sie ist allerdings im Windows Driver Kit (WDK) enthalten.

Das WDK könnt ihr über folgenden Link herunterladen: https://msdn.microsoft.com/de-de/windows/hardware/hh852365.aspx

Auf der Webseite wählt ihr „Installieren des Windows-Treiberkits (WDK) 10“, dann startet der Download der „wdksetup.exe“

 

DPInst - WDK herunterladen

 

Führt die heruntergeladene wdksetup.exe aus und folgt dem Installations-Wizard. Der Installer lädt noch einige Dateien herunter, ca. 850 MB. Es gibt auch die Möglichkeit, die Dateien für einen Computer ohne Internet herunter zu laden.

 

Dpinst - WDK installieren 1

 

Dpinst - WDK installieren 2

 

Die nachfolgende Meldung ist für uns nicht relevant und kann ignoriert werden.

 

Dpinst - WDK installieren 3

 

Dpinst - WDK installieren 4

 

Dpinst - WDK installieren 5

 

Dpinst - WDK installieren 6

 

Nach der Installation findet man die „dpinst.exe“ unter dem Pfad C:\Program Files (x86)\Windows Kits\10\redist\DIFx\dpinst\MultiLin\x64 für 64 Bit Betriebssysteme und C:\Program Files (x86)\Windows Kits\10\redist\DIFx\dpinst\MultiLin\x86 für 32 Bit Betriebssysteme. Bitte beachtet, dass die 32 Bit Variante unter einem 64 Bit Windows nicht funktioniert.

 

Dpinst - WDK Pfad

 

 

DPInst Parameter

 

Ein Beispiel für die „silent“ Ausführung, über die Kommandozeile, sieht so aus: „dpinst.exe" /S /C /F /L 1033 /SE /SA /SW /PATH "%~dp0extracted"

Die Parameter haben folgende Bedeutung:

/C: log Meldungen in der Kommandozeile anzeigen

/F: Treiber für ein Gerät installieren, auch wenn ein besserer Treiber bereits vorhanden ist

/L <SPRACH-ID>: Texte und Bilder werden entsprechend der Sprach-ID konfiguriert. Deutsch:1031, Englisch:1033

/S: Silent installieren

/SA: kein Eintrag unter „Programme und Funktionen“ in der Systemsteuerung

/SE: EULA Anzeige unterdrücken

/PATH: Pfad zum Treiber Ordner (Achtung! Unterordner müssen per XML angegeben werden)

 

Weitere Kommandozeilen Parameter findet man bei Microsoft: https://msdn.microsoft.com/en-us/library/windows/hardware/ff544775(v=vs.85).aspx

 

Die Deinstallation von Treibern kann über folgenden Aufruf gestartet werden: DPInst.exe /u <Pfad zur INF>

Weitere Informationen zur Deinstallation findet ihr bei Microsoft: https://msdn.microsoft.com/en-us/library/windows/hardware/ff553603(v=vs.85).aspx

 

 

DPInst Return Codes

 

DPInst verwendet eigene Return Codes und hält sich nicht an den gewohnten Standard. Das kann unter anderem bei SCCM zu Fehlermeldungen führen, obwohl die Installation erfolgreich war. 

Die Return Codes haben folgenden Aufbau: 0xAABBCCDD

 

Code-AnteilBedeutung
AA3 Möglichkeiten: „80“ Ein Treiber Paket konnte nicht installiert werden. „40“ Ein Neustart ist notwendig. „00“ Keines von den vorherigen beiden trifft zu 
BBAnzahl der Treiber Pakete die nicht installiert werden konnten
CCAnzahl der Treiber die in den Treiber Store kopiert wurden, aber nicht für ein Gerät installiert wurden (trifft zu wenn das Gerät z.B. nicht angeschlossen ist)
DDAnzahl der Treiber  die für ein Gerät installiert wurden

Beispiele:

0x100: 1 Treiber wurde erfolgreich installiert, aber nicht für ein vorhandenes Gerät installiert

0x1: Treiber wurde erfolgreich installiert

0x8000000: Der Treiber konnte nicht installiert werden

 

 

DPInst Treiber Paket erstellen

 

Um ein Paket zu erstellen, sollte immer die Datei dpinst.exe mitgegeben werden. Bei einer Größe von ca. 1 MB ist das zu verschmerzen. Der Treiber selbst muss natürlich auch mitgeliefert werden. Der Übersicht halber lege ich diesen in einem Unterordner ab. Das ganze wird dann über eine Batch Datei ausgeführt.

 

Dpinst - Paket vorbereiten

 

Die Batch Datei enthält die Kommandozeile, die ich bereits bei den Parametern gezeigt habe. 

Hinweis: %~dp0 verweist auf den Ausführungspfad der Batch-Datei. Der Strich danach ist der Cursor, den ich zur optischen Trennung dort platziert habe.

 

Dpinst - Paket vorbereiten 2

 

Die Ausführung wird detailliert Protokolliert. Der Return Code 0x100 bedeutet, dass ein Treiber installiert wurde.

 

dpinst - treiber installieren

 

Die Treiber können nach der Installation für Geräte gewählt werden (hier über „Drucker hinzufügen“). Wenn ein neues Gerät angeschlossen wird, wird der Treiber automatisch ausgewählt. Vorausgesetzt, es ist kein besserer vorhanden.

 

dpinst - treiber installiert

 

        

(Visited 5.142 times, 1 visits today)

Related Post

Ansgar Geers sagt:

Die Datei DPINST wurde aus dem aktuellstem WDK für Windows 10 entfernt

Christoph Mehren sagt:

Danke für die Info! Ich werde das zu Beginn des Artikels erwähnen.

Thomas Illies sagt:

Danke für die Beschreibung;
bei mir werden in ..\redist\ nur die Unterverzeichnisse offreg und wdf erstellt – von DIFx weit und breit keine Spur…
Sind noch irgendwelche Vorbedinungen notwendig, damit dieser Zweig mitinstalliert wird ?

Thomas Illies

Christoph Mehren sagt:

Wie Ansgar Geers schreibt, ist die dpinst.exe leider nicht mehr im aktuellen WDK enthalten. Sobald ich eine neue Möglichkeit gefunden habe werde ich den Artikel aktualisieren.

Steffen sagt:

wdksetup.exe Build 1511 lässt sich derzeit noch per Direktlink herunterladen: http://download.microsoft.com/download/C/E/1/CE19C726-6036-4443-845B-A652B0F48CD7/wdk/wdksetup.exe

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.