Windbg und Symbol-Dateien
Ich habe ein problem mit Symboldateien. Ich experimentierte mit dem symbol file path und geben Sie den Pfad wie folgt:
srv*c:\symbols*http://msdl.microsoft.com/download/symbols;C:\Users\myuser\Desktop\driver2\objchk_win7_x86\i386
Aber danach änderte ich es auf den folgenden:
srv*c:\symbols*http://msdl.microsoft.com/download/symbols;C:\Users\myuser\Desktop\mydriver\objchk_win7_x86\i386
Änderte ich die driver2 mit mydriver im Pfad: dies ist der Pfad, wo die .pdb-Datei für meine Fahrer befindet. Das problem ist, dass .sympath druckt den rechten Pfad wie unten gezeigt:
kd> .sympath
Symbol search path is: srv*c:\symbols*http://msdl.microsoft.com/download/symbols;C:\Users\myuser\Desktop\mydriver\objchk_win7_x86\i386
Expanded Symbol search path is: srv*c:\symbols*http://msdl.microsoft.com/download/symbols;c:\users\myuser\desktop\mydriver\objchk_win7_x86\i386
Aber die Symbole für den Fahrer sind noch nicht gefunden. Wenn ich laufen .reload-Befehl, können wir sehen, dass WinDbg sucht .pdb in driver2/Verzeichnis anstelle von mydriver/- Verzeichnis.
kd> .reload /f mydriver.sys
SYMSRV: c:\symbols\mydriver.pdb\3D655E533B0449A38D7AB0AF637CE9201\mydriver.pdb not found
SYMSRV: http://msdl.microsoft.com/download/symbols/mydriver.pdb/3D655E533B0449A38D7AB0AF637CE9201/mydriver.pdb not found
SYMSRV: c:\users\myuser\desktop\mydriver\objchk_win7_x86\i386\mydriver.pdb\3D655E533B0449A38D7AB0AF637CE9201\mydriver.pdb not found
DBGHELP: c:\users\myuser\desktop\driver2\objchk_win7_x86\i386\mydriver.pdb - file not found
*** ERROR: Module load completed but symbols could not be loaded for mydriver.sys
DBGHELP: mydriver - no symbols loaded
Habe ich gelöscht alle Arbeitsbereiche, geschlossen WinDbg, Windows neu gestartet, aber die driver2/Eintrag noch vorhanden ist: es muss in der default-workspace-cache oder irgendwo. Wie kann ich die löschen die ganzen persönlichen Einstellungen von WinDbg einschließlich jene caches, so kann ich starten Sie WinDbg und werden gegangen mit der driver2/Pfad und machen Sie es verwenden mydriver/.
Konnte ich auch lösen, das problem mit der Umbenennung der mydriver/Verzeichnis zurück in driver2/, aber ich will nicht, um das problem zu lösen so. Ich möchte verstehen, was Los ist und lösen Sie die beste, die ich kann.
Du musst angemeldet sein, um einen Kommentar abzugeben.
werde Ihnen sagen, warum Sie nicht wollen, laden Sie die pdb. Vielleicht hast du einfach neu erstellen, Ihre Fahrer und die pdb-guid oder pdb-Zeitalter nicht mehr passen.
Wenn Sie sicher sind, dass Sie gebaut haben, die der gleichen Quelle-Dateien können Sie erzwingen, dass das laden der hve durch
/i ist die magic-Schalter laden auch nicht übereinstimmende PDB-Dateien. Dieser Schalter wird nicht geladen, alle Treiber aus dem symbol-server, aber es werden nur die lokalen Dateipfade zu laden Sie Ihre Fahrer. Auch das symbol speichern, Verzeichnisse (SRV*) werden nicht betrachtet, da gäbe es viele Versionen, zum von zu wählen. Aber wenn Ihre .sympath direkt Punkte, um Ihre pdb-es wird geladen.
Ist der Treiber ursprünglich kompiliert & Baujahr der driver2 Weg? Was ist die Lage des mydriver.sys?
Einen Weg zur Lösung des aktuellen Problems aus dem Protokoll klar, dass windbg erwartet pdb-Datei im Verzeichnis 'c:\users\myuser\desktop\mydriver\objchk_win7_x86\i386\mydriver.pdb\3D655E533B0449A38D7AB0AF637CE9201\mydriver.pdb'.
Diese ist einfach ein standard Weg( binaryfoldername\hashid\pdbfile ), die Windows erwartet Sie ein symbol für eine binäre.
Besseren Weg, um dieses Problem zu lösen - wiederum auf der sim-Karte laut und schauen Weg
an .reload /f my_driver.sys
oder füge neuen Pfad zu .sympath[+] Pfad/zu/pdb und tun das gleiche