Autor: AHT
Fehlende Treiber finden, ohne dass man das zugehörige Gerät kennt
Das Grundproblem...
Wer kennt das nicht - das Betriebssystem wurde neu installiert, aber es werden nicht alle Treiber gefunden und im Gerätemanager tauchen gelbe Warndreiecke auf. Die meisten Tools erkennen dann die fehlende Hardware ebenfalls nicht. Nach was soll man dann im Netz suchen? Wie kommt man an die Treiber?
Ich möchte hier einmal eine Möglichkeit aufzeigen, wie man bei solchen Problemen vorgehen kann...
Was brauchen wir, um die nicht erkannten Geräte und ihre Treiber trotzdem finden zu können?
Zuerst braucht man natürlich den Namen des Windows Betriebssystems, für das man die Treiber sucht.
Dann müssen wir auch wissen, ob es sich um ein 32-Bit oder ein 64-Bit Betriebssystem handelt.
Und - last, but not least - wir brauchen die Hardware-IDs der fehlenden Treiber!
1. Infos mit dem PPFScanner ermitteln
Um möglichst einfach an die Daten zu kommen, habe ich für den PPFScanner das Script Hardwaredaten.scp geschrieben.
Die Systeminfos ermittelt das Tool im Script mittels des Microsoft Tools MSINFO, die Daten über fehlende Treiber werden über WMI und Powershell gesammelt.
Um die Daten einzusammeln, folgendes tun:
- Von hier die aktuelle Version des PPFScanners herunterladen und die ZIP in einen eigenen Ordner entpacken (zum Beispiel nach C:\PPFS).
- Danach die PPFScan.exe starten.
- Lass auf Nachfrage des Programms die 64Bit Version des Scanners starten.
- Klicke im PPFScanner oben links auf den Menüpunkt Programm, es öffnet sich dann ein Untermenü.
- Wähle im Untermenü Script laden und ausführen.
- Du hast dann im daraufhin erscheinenden Dialog die Möglichkeit, durch die Ordner zu browsen und eine Datei auszuwählen.
[Blockierte Grafik: https://i.imagebanana.com/img/jemyu1m7/3.jpg] - Wähle hier die Datei Hardwaredaten.scp aus, die sich im PPFScanner Ordner befindet, klicke dann auf Öffnen und bestätige die erscheinende Messagebox mit Ja.
[Blockierte Grafik: https://i.imagebanana.com/img/bbbk5jhr/4.jpg] - Nach dem Scan beendet sich der Scanner und es öffnet sich im Windows-Explorer der Ordner C:\PPFS_Scan5. Es befinden sich dann im Ordner C:\PPFS_Scan5 einige Text-Dateien.
Was muss man jetzt aber mit den Daten tun?
- Aus der Datei MSINFO.txt kann man die Systemdaten ermitteln. Sie befinden sich unter der Überschrift [Systemübersicht]. In em Beispiel handelt es sich um ein Windows10 64Bit System:
Spoiler anzeigen
Zitat von MSINFO.TXTAlles anzeigen[Systemübersicht]
Element Wert
Betriebsystemname Microsoft Windows 10 Home
Version 10.0.14393 Build 14393
Weitere Betriebsystembeschreibung Nicht verfügbar
Betriebsystemhersteller Microsoft Corporation
Systemname COMPAQ6730BAH
Systemhersteller Hewlett-Packard
Systemmodell HP Compaq 6730b
Systemtyp x64-basierter PC
- In der Datei WMIppDrivers.txt findet man Daten des Gerätemanagers. Um fehlende Treiber zu finden, muss man nach dem Text Status : Error suchen. Das sind die Treiber, die Probleme machen. Die Treiber, die nicht gefunden wurden, haben zusätzlich einen Wert von 28 bei ConfigManagerErrorCode. Ein solcher Eintrag sieht in der Datei so aus:
Spoiler anzeigen
Zitat von WMIppDrivers.txtAlles anzeigen__GENUS : 2
__CLASS : Win32_PnPEntity
__SUPERCLASS : CIM_LogicalDevice
__DYNASTY : CIM_ManagedSystemElement
__RELPATH : Win32_PnPEntity.DeviceID="PCI\\VEN_8086&DEV_1E31&
SUBSYS_84CA1043&REV_04\\3&11583659&0&A0"
__PROPERTY_COUNT : 24
__DERIVATION : {CIM_LogicalDevice, CIM_LogicalElement, CIM_Manag
edSystemElement}
__SERVER : ....
__NAMESPACE : root\cimv2
__PATH : \\CHEFE-PC\root\cimv2:Win32_PnPEntity.DeviceID="P
CI\\VEN_8086&DEV_1E31&SUBSYS_84CA1043&REV_04\\3&1
1583659&0&A0"
Availability :
Caption : USB (Universal Serial Bus)-Controller
ClassGuid :
CompatibleID : {PCI\VEN_8086&DEV_1E31&REV_04, PCI\VEN_8086&DEV_1
E31, PCI\VEN_8086&CC_0C0330, PCI\VEN_8086&CC_0C03
...}
ConfigManagerErrorCode : 28
ConfigManagerUserConfig : False
CreationClassName : Win32_PnPEntity
Description : USB (Universal Serial Bus)-Controller
DeviceID : PCI\VEN_8086&DEV_1E31&SUBSYS_84CA1043&REV_04\3&11
583659&0&A0
ErrorCleared :
ErrorDescription :
HardwareID : {PCI\VEN_8086&DEV_1E31&SUBSYS_84CA1043&REV_04, PC
I\VEN_8086&DEV_1E31&SUBSYS_84CA1043, PCI\VEN_8086
&DEV_1E31&CC_0C0330, PCI\VEN_8086&DEV_1E31&CC_0C0
3}
InstallDate :
LastErrorCode :
Manufacturer :
Name : USB (Universal Serial Bus)-Controller
PNPDeviceID : PCI\VEN_8086&DEV_1E31&SUBSYS_84CA1043&REV_04\3&11
583659&0&A0
PowerManagementCapabilities :
PowerManagementSupported :
Service :
Status : Error
StatusInfo :
SystemCreationClassName : Win32_ComputerSystem
SystemName : .....
- Was rechts neben HardwareID steht, ist für uns wichtig. Wir brauchen hier nur die erste ID - also von der Klammer bis zum ersten Komma. Hier PCI\VEN_8086&DEV_1E31&SUBSYS_84CA1043&REV_04.
- Was hinter dem ersten Schrägstrich bis zum & Zeichen steht steht, gibt hier den Hersteller der Hardware an - hier VEN_8086. Das VEN steht hier für Vendor. Sucht man im Internet nach dieser Nummer, stellt man fest, dass es sich um den Hersteller Intel handelt. Alle Gerate mit VEN_8086 sind also von Intel.
- Am besten sucht man im Netz aber nach der gesamten Nummer - also nach PCI\VEN_8086&DEV_1E31&SUBSYS_84CA1043&REV_04.
Wichtig: Wir suchen zuerst nur nach Infos und laden nichts herunter! In der Regel landen wir bei der Suche nach den IDs auf Seiten, die uns zur Installation eines Tools zur automatischen Treiberinstallation verleiten sollen. Solche Tools sollte man besser nicht nutzen!- Durch unsere Internetsuche erhalten wir die Info, dass für folgendes Gerät noch der Treiber fehlt:
- Intel(R) USB 3.0 eXtensible Host Controller
- Treiber sollte man nur direkt vom Hersteller laden. Wir rufen also die Downloadseite von Intel auf und suchen dort nach dem Treiber.
- Auf der Seite von Intel werden für unterschiedliche Chipsets unterschiedliche Treiber angeboten.
- Ist der Chipset noch nicht auf dem Gerät installiert, müssten wir erst diesen installieren und dann erneut nach fehlenden Treibern suchen.
- Ist er installiert, kann man ebenfalls wieder in der Datei WMIppDrivers.txt nachsehen, um welchen Chipset es sich handelt. In unserem Beispielfall ist der bereits installiert:
- Durch unsere Internetsuche erhalten wir die Info, dass für folgendes Gerät noch der Treiber fehlt:
Spoiler anzeigen
Zitat von WMIppDrivers.txtAlles anzeigen__GENUS : 2
__CLASS : Win32_PnPEntity
__SUPERCLASS : CIM_LogicalDevice
__DYNASTY : CIM_ManagedSystemElement
__RELPATH : Win32_PnPEntity.DeviceID="PCI\\VEN_8086&DEV_1E2D&
SUBSYS_84CA1043&REV_04\\3&11583659&0&D0"
__PROPERTY_COUNT : 24
__DERIVATION : {CIM_LogicalDevice, CIM_LogicalElement, CIM_Manag
edSystemElement}
__SERVER : ......
__NAMESPACE : root\cimv2
__PATH : \\CHEFE-PC\root\cimv2:Win32_PnPEntity.DeviceID="P
CI\\VEN_8086&DEV_1E2D&SUBSYS_84CA1043&REV_04\\3&1
1583659&0&D0"
Availability :
Caption : Intel(R) 7 Series/C216 Chipset Family USB Enhance
d Host Controller - 1E2D
ClassGuid : {36fc9e60-c465-11cf-8056-444553540000}
CompatibleID : {PCI\VEN_8086&DEV_1E2D&REV_04, PCI\VEN_8086&DEV_1
E2D, PCI\VEN_8086&CC_0C0320, PCI\VEN_8086&CC_0C03
...}
ConfigManagerErrorCode : 0
ConfigManagerUserConfig : False
CreationClassName : Win32_PnPEntity
Description : Intel(R) 7 Series/C216 Chipset Family USB Enhance
d Host Controller - 1E2D
DeviceID : PCI\VEN_8086&DEV_1E2D&SUBSYS_84CA1043&REV_04\3&11
583659&0&D0
ErrorCleared :
ErrorDescription :
HardwareID : {PCI\VEN_8086&DEV_1E2D&SUBSYS_84CA1043&REV_04, PC
I\VEN_8086&DEV_1E2D&SUBSYS_84CA1043, PCI\VEN_8086
&DEV_1E2D&CC_0C0320, PCI\VEN_8086&DEV_1E2D&CC_0C0
3}
InstallDate :
LastErrorCode :
Manufacturer : Intel
Name : Intel(R) 7 Series/C216 Chipset Family USB Enhance
d Host Controller - 1E2D
PNPDeviceID : PCI\VEN_8086&DEV_1E2D&SUBSYS_84CA1043&REV_04\3&11
583659&0&D0
PowerManagementCapabilities :
PowerManagementSupported :
Service : usbehci
Status : OK
StatusInfo :
SystemCreationClassName : Win32_ComputerSystem
SystemName : .......
- Wir benötigen also den USB 3.0 eXtensible Host Controller Treiber für den Chipset C216 von Intel.
2. Infos aus dem Betriebssystem ermitteln
Steht man eher auf "Handarbeit", kann man sich die nötigen Infos auch direkt (ohne das Tool) aus dem Betriebssystem beschaffen. Zum Auslesen der Betriebssysteminfos kann man die Systemsteuerung bemühen. Unter System und Wartung und System finden wir die Infos, die wir brauchen:
[Blockierte Grafik: https://i.imagebanana.com/img/tu9yzddj/1.jpg]
Zur Ermittlung der Hardware-IDs rufen wir in der Systemsteuerung den Gerätemanager auf.
Klicken wir mit der rechten Maustaste auf einen mit einem Warnsymbol gekennzeichneten Treiber, erscheint ein Menü.
In diesem Menü wählen wir Eigenschaften aus.
Im daraufhin erscheinenden Dialog klicken wir auf die Registrierkarte Details.
Unter Eigenschaft stellen wir dann Hardware-IDs ein.
Unter dem Wort Wert finden wir dann im Textfeld unsere Hardware-IDs. Auch von da benötigen wir eigentlich nur die erste ID.
Hier mal der Dialog als Beispiel:
[Blockierte Grafik: https://i.imagebanana.com/img/sk9wcme3/2.JPG]
Danach verfahren wir in der gleichen Weise, wie es oben schon bei der WMIppDrivers.txt Datei beschrieben. Wir suchen im Netz nach der ID.