Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Wenn Anwendungen, Bibliotheken, Treiber oder Betriebssysteme verknüpft sind, erstellt der Linker die .exe- und .dll-Dateien sowie eine Reihe zusätzlicher Dateien, die als Symboldateien bezeichnet werden.
Symboldateien enthalten eine Vielzahl von Daten, die beim Ausführen der Binärdateien nicht tatsächlich benötigt werden, was aber beim Debuggen sehr nützlich sein könnte.
Symboldateien können in der Regel Folgendes enthalten:
Globale Variablen
Lokale Variablen
Funktionsnamen und die Adressen ihrer Einstiegspunkte
Framepointer-Auslassungseinträge (FPO)
Quellzeilennummern
Jedes dieser Elemente wird einzeln als Symbol bezeichnet. Beispielsweise kann eine einzelne Symboldatei Myprogram.pdb mehrere hundert Symbole enthalten, darunter globale Variablen und Funktionsnamen und Hunderte lokaler Variablen. Softwareunternehmen veröffentlichen häufig zwei Versionen jeder Symboldatei: eine vollständige Symboldatei, die sowohl öffentliche Symbole als auch private Symbole enthält, und eine reduzierte (entfernte) Datei, die nur öffentliche Symbole enthält. Weitere Informationen finden Sie unter "Öffentliche und private Symbole".
Beim Debuggen müssen Sie sicherstellen, dass der Debugger auf die Symboldateien zugreifen kann, die dem Ziel zugeordnet sind, das Sie debuggen. Sowohl das Livedebugging als auch das Debuggen von Absturzabbilddateien erfordern Symbole. Sie müssen die richtigen Symbole für den Code abrufen, den Sie debuggen möchten, und diese Symbole in den Debugger laden.
Windows-Symbole
Windows behält seine Symbole in Dateien mit der Erweiterung PDB bei.
Der Compiler und der Linker steuern das Symbolformat. Der Visual C++-Linker platziert alle Symbole in PDB-Dateien.
Das Windows-Betriebssystem wurde in zwei Versionen erstellt. Der kostenlose Build (oder Verkaufsbuild) verfügt über relativ kleine Binärdateien, und der überprüfte Build (oder Debugbuild) verfügt über größere Binärdateien mit mehr Debugsymbolen im Code selbst. Überprüfte Builds waren in älteren Versionen von Windows vor Windows 10, Version 1803, verfügbar. Jeder dieser Builds verfügte über eigene Symboldateien. Beim Debuggen eines Ziels unter Windows müssen Sie die Symboldateien verwenden, die dem Build von Windows auf dem Ziel entsprechen.
In der folgenden Tabelle sind einige der Verzeichnisse aufgeführt, die in einer Windows-Standardsymbolstruktur vorhanden sind:
| Verzeichnis | Enthält Symboldateien für |
|---|---|
ACM |
Microsoft Audio Compression Manager-Dateien |
COM |
Ausführbare Dateien (.com) |
CPL |
Systemsteuerungsprogramme |
DLL |
Dynamische Linkbibliothek-Dateien (.dll) |
DRV |
Treiberdateien (.drv) |
EXE |
Ausführbare Dateien (.exe) |
SCR |
Bildschirmschonerdateien |
SYS |
Treiberdateien (.sys) |