Freigeben über


Debuggen von Quellcode in WinDbg (Classic)

Quellpfad

Der Quellpfad gibt die Verzeichnisse an, in denen sich die C- und C++-Quelldateien befinden. Weitere Informationen zum Anzeigen von Quellcode im Debugger finden Sie unter "Quellpfad".

Anmerkung Wenn Sie mit einem Unternehmensnetzwerk verbunden sind, besteht die effizienteste Möglichkeit für den Zugriff auf Quelldateien darin, einen Quellserver zu verwenden. Sie können einen Quellserver verwenden, indem Sie die srv*-Zeichenfolge in Ihrem Quellpfad verwenden. Weitere Informationen zu Quellservern finden Sie unter Verwenden eines Quellservers.

Führen Sie eine der folgenden Aktionen aus, um den Quellpfad in WinDbg zu steuern:

Öffnen und Schließen von Quelldateien

Führen Sie eine der folgenden Aktionen aus, um eine Quelldatei direkt zu öffnen oder zu schließen:

  • Wählen Sie im Menü "Datei" die Option "Quelldatei öffnen" aus, oder drücken Sie STRG+O. Sie können auch die Schaltfläche " Quelldatei öffnen" verwenden (Screenshot der Schaltfläche

    Anmerkung Wenn Sie das Menü oder die Symbolleistenschaltfläche verwenden, um eine Quelldatei zu öffnen, wird der Pfad dieser Datei automatisch an den Quellpfad angefügt.

  • Wählen Sie im Menü "Datei" die Option "Aktuelles Fenster schließen" aus.

  • Wählen Sie in der Ecke des Quellfensters die Schaltfläche " Schließen " aus.

  • Wählen Sie im Menü "Datei" die Option "Zuletzt verwendete Dateien" aus, um eine der vier Quelldateien zu öffnen, die Sie zuletzt in WinDbg geöffnet haben.

  • Geben Sie den Befehl " .open" (Open Source File) ein.

  • Geben Sie den Befehl "lsf" (Quelldatei laden oder entladen) ein.

In WinDbg zeigt das Quellfenster Quelldateien an, die in den Debugger geladen wurden.

Öffnen des Quellfensters

Der Debugger öffnet ein Quellfenster, wenn eine neue Quelldatei geladen wird. Um ein geöffnetes Quellfenster wiederherzustellen oder zu wechseln, wechseln Sie zum Menü "Fenster ", und wählen Sie aus der Liste der Fenster unten im Menü aus.

Der folgende Screenshot zeigt ein Beispiel für ein Quellfenster.

Screenshot des Quellfensters in WinDbg, in dem eine geladene Quelldatei angezeigt wird.

Jede Quelldatei befindet sich in einem eigenen Quellfenster. Der Titel jedes Quellfensters ist der vollständige Pfad der Quelldatei.

Verwenden des Quellfensters

Jedes Quellfenster zeigt den Text einer Quelldatei an. Im Debugger können Sie keine Quelldatei bearbeiten. Weitere Informationen zum Ändern der Schriftart- und Registerkarteneinstellungen finden Sie unter Ändern von Texteigenschaften.

Jedes Quellfenster verfügt über ein Kontextmenü mit zusätzlichen Befehlen. Um auf das Menü zuzugreifen, halten Sie die Titelleiste gedrückt (oder klicken Sie mit der rechten Maustaste darauf), oder wählen Sie das Symbol aus, das in der Nähe der oberen rechten Ecke des Fensters angezeigt wird. In der folgenden Liste werden einige der Menübefehle beschrieben:

  • Festlegen des Anweisungszeigers auf die aktuelle Zeile ändert den Wert des Anweisungszeigers in die Anweisung, die der aktuellen Zeile entspricht. Dieser Befehl entspricht der Verwendung des Befehls Edit | Aktuelle Anweisung festlegen oder dem Drücken von STRG+UMSCHALT+I.

  • Diese Datei bearbeiten öffnet die Quelldatei in einem Text-Editor. Der Editor wird durch die Registrierungsinformationen des WinDiff-Editors oder durch den Wert der WINDBG_INVOKE_EDITOR Umgebungsvariable bestimmt. Betrachten Sie z. B. den Fall, wenn der Wert von WINDBG_INVOKE_EDITOR folgendes ist.

    c:\my\path\myeditor.exe -file %f -line %l
    

    In diesem Fall zeigt Myeditor.exe die 1-basierte Zeilennummer der aktuellen Quelldatei an. Die Option %l gibt an, dass Zeilennummern als einsbasiert gelesen werden sollen, während %f angibt, dass die aktuelle Quelldatei verwendet werden soll. Weitere Ersetzungsmöglichkeiten sind %L, die darauf hindeuten, dass Zeilennummern nullbasiert sind, und %p, was auch darauf hindeuten kann, dass die aktuelle Quelldatei verwendet werden soll.

  • Die Auswahl wertet den aktuell ausgewählten Text mit dem C++-Ausdrucksauswerter aus. Das Ergebnis wird im Fenster "Debuggerbefehl" angezeigt. Wenn der markierte Text mehrere Zeilen enthält, ergibt sich ein Syntaxfehler. Dieser Befehl entspricht der Verwendung von Edit | Auswahl auswerten, STRG+UMSCHALT+V zu drücken oder den ?? (Auswerten des C++-Ausdrucks) Befehl mit dem markierten Text als Argument zu verwenden.

  • Ausgewählten Typ anzeigen zeigt den Datentyp des ausgewählten Objekts an. Diese Anzeige wird im Fenster "Debuggerbefehl" angezeigt. Wenn der markierte Text mehr als ein einzelnes Objekt enthält, wird möglicherweise ein Syntaxfehler oder andere unregelmäßige Ergebnisse angezeigt. Dieser Befehl entspricht der Verwendung des Befehls Bearbeiten | Ausgewählten Typ anzeigen oder dem Drücken von STRG+UMSCHALT+Y.

  • Öffnen des Speicherfensters für die Auswahl öffnet ein neues angedocktes Speicherfenster, in dem der Speicher beginnend mit der Adresse des ausgewählten Ausdrucks angezeigt wird.

  • Die Auswahl zum Überwachungsfenster hinzufügen hängt das ausgewählte Quell-Token an das Überwachungsfenster an.

  • Disassemblierung bei der aktuellen Zeile bewirkt, dass die Instruktion, die der aktuellen Zeile entspricht, im Disassemblierungsfenster angezeigt wird. Die ausgewählte Zeile ist im Fenster "Quelle" und im Fenster "Zerlegen" hervorgehoben, aber dieser Befehl wirkt sich nur auf die Anzeige aus. Der Anweisungszeiger wird nicht geändert. Wenn das Disassembly-Fenster geschlossen ist, wird es geöffnet, falls dieser Befehl ausgewählt wird.

  • Wählen Sie die Quellsprache aus, um eine Liste der Programmiersprachen anzuzeigen. Wählen Sie die Programmiersprache aus, die Sie zum Generieren der Quelldatei verwendet haben, und wählen Sie dann OK aus, um die grundlegende Syntaxherhebung für das aktuelle Quellfenster zu aktivieren. Wählen Sie <"Keine"> aus, um die Syntaxmarkierung für das aktuelle Quellfenster zu deaktivieren.

Quellfensterfarben und Hoverauswertung

Wenn der Debugger die Quelldateierweiterung erkennt, zeigt das Quellfenster bestimmte Syntaxelemente in Farbe an. Gehen Sie wie folgt vor, um die Farben zu deaktivieren oder zu ändern:

  • Um die Syntaxfarben in einem einzelnen Fenster zu deaktivieren, öffnen Sie das Kontextmenü des Quellfensters, wählen Sie "Quellsprache auswählen" und dann "Keine"> aus<.

  • Um die Syntaxfarben für alle Quellfenster zu deaktivieren, wählen Sie im Menü "Ansicht" die Option "Optionen" aus. Deaktivieren Sie dann das Kontrollkästchen "Quellsprachen analysieren ".

  • Um die Syntaxfarben zu ändern, wählen Sie im Menü "Ansicht" die Option "Optionen" aus. Wählen Sie dann im Bereich "Farben " ein Syntaxelement aus, und wählen Sie die Schaltfläche " Ändern " aus, um die Farbe zu ändern.

  • Die Analysemethode, die für die Hervorhebung verwendet wird, wird von der Programmiersprache bestimmt, die der Dateierweiterung für die Quelldatei zugeordnet ist. Verwenden Sie das Dialogfeld "Dateierweiterungen für Quellsprachen", um die Programmiersprache zu ändern, die einer bestimmten Dateierweiterung zugeordnet ist. Um dieses Dialogfeld zu öffnen, wählen Sie im Menü "Ansicht" die Dateierweiterungen der Quellsprache aus.

Die Zeile, die den aktuellen Programmzähler darstellt, ist hervorgehoben. Zeilen, an denen Haltepunkte festgelegt werden, werden ebenfalls hervorgehoben.

Wenn Sie ein Quellfenster auswählen und dann mit der Maus auf ein Symbol in diesem Fenster zeigen, wird das Symbol ausgewertet. Die Auswertung ist identisch mit der, die vom Befehl dt (Anzeigetyp) erzeugt wird. Um diese Auswertung zu deaktivieren, wählen Sie im Menü "Ansicht" die Option "Optionen" aus. Deaktivieren Sie dann das Kontrollkästchen " Beim Daraufzeigen auswerten ".

Siehe auch

Weitere Informationen zum Quelldebugging und verwandten Befehlen finden Sie unter Debuggen im Quellmodus.