Freigeben über


Erste Schritte mit Haltepunkten im Visual Studio-Debugger

Haltepunkte stellen eines der wichtigsten Debugverfahren in der Toolbox eines Entwickelnden dar. Sie legen Haltepunkte an der Stelle fest, an der Sie die Debuggerausführung anhalten möchten. Sie können sich dann beispielsweise den Status von Codevariablen an einem bestimmten Breakpoint ansehen oder die Aufrufliste anzeigen.

Festlegen von Haltepunkten im Quellcode

Sie können einen Haltepunkt in einer beliebigen Zeile ausführbaren Codes festlegen. Sehen Sie sich beispielsweise diesen einfachen C#-Code an, der eine einfache Schleife erstellt.

int testInt = 3;

for (int i = 0; i < 10; i++)
{
    testInt += i;
}

Sie können einen Haltepunkt in der Zeile des Codes mit der Variablenzuweisung (int testInt = 3), in der for-Schleife oder in einem beliebigen Code innerhalb der for-Schleife festlegen. Sie können keinen Haltepunkt für Methodensignaturen, Deklarationen für einen Namespace oder eine Klasse oder Variablendeklarationen festlegen, wenn keine Zuordnung vorhanden ist und kein Getter/Setter vorhanden ist.

So legen Sie einen Haltepunkt im Quellcode fest:

  • Klicken Sie auf den linken Rand neben einer Codezeile. Sie können auch die entsprechende Zeile auswählen und F9 drücken, auf Debuggen > Haltepunkt ein/aus klicken oder mit der rechten Maustaste klicken und Haltepunkt>Haltepunkt einfügen auswählen. Der Haltepunkt wird als roter Punkt am linken Rand angezeigt.

Für die meisten Sprachen (einschließlich C#) hebt Visual Studio automatisch Haltepunkte und aktuelle Ausführungslinien hervor. Bei einigen Sprachen wie C++, die standardmäßig nicht hervorgehoben werden, können Sie die Hervorhebung von Haltepunkten und aktuellen Zeilen aktivieren, indem Sie Extras oder Debug>Optionen>Debuggen>Bei Haltepunkten und aktueller Anweisung gesamte Quellzeile markieren (nur C++) auswählen.

Festlegen eines Haltepunkts

Festlegen eines Haltepunkts

Drücken Sie zum Debuggen F5, oder wählen Sie Debuggen>Debuggen starten aus.

Beim Debuggen wird die Ausführung am Haltepunkt angehalten, bevor der Code in dieser Zeile ausgeführt wird. Das Haltepunktsymbol zeigt einen gelben Pfeil an.

Am Haltepunkt im folgenden Beispiel ist der Wert von testInt immer noch 3. Der Wert wurde also nicht geändert, da die Variable initialisiert wurde (auf einen Wert von 3 festgelegt), da die Anweisung in Gelb noch nicht ausgeführt wurde.

Haltepunktausführung angehalten

Am Haltepunkt im folgenden Beispiel ist der Wert von testInt noch 1. Der Wert wurde also nicht geändert, da die Variable initialisiert wurde (auf einen Wert von 1 festgelegt), da die Anweisung in Gelb noch nicht ausgeführt wurde.

Haltepunktausführung angehalten

Wenn der Debugger am Haltepunkt anhält, können Sie den aktuellen Status der App anzeigen, einschließlich Variablenwerten und der Aufrufliste.

In der folgenden Abbildung sehen Sie in einem Datentipp und im Fenster Lokal beispielsweise den Wert von testInt.

Screenshot der Anzeige des App-Status

Im Folgenden finden Sie einige allgemeine Hinweise für das Arbeiten mit Haltepunkten.

  • Bei einem Breakpoint handelt es sich um eine Umschaltfläche. Sie können auf sie klicken, F9 drücken oder Debuggen > Haltepunkt ein/aus verwenden, um den Breakpoint zu löschen oder ihn neu einzufügen.

  • Um einen Haltepunkt zu deaktivieren, ohne ihn zu löschen, bewegen Sie den Mauszeiger darüber oder klicken Sie mit der rechten Maustaste darauf und wählen Sie Haltepunkt deaktivierenaus. Deaktivierte Breakpoints werden am linken Rand oder im Fenster Haltepunkte ausgegraut angezeigt. Wenn Sie einen Breakpoint wieder aktiveren möchten, bewegen Sie den Mauszeiger darauf, oder klicken Sie mit der rechten Maustaste darauf, und klicken Sie auf Haltepunkt aktivieren.

  • Wenn Sie Bedingungen und Aktionen festlegen, Bezeichnungen hinzufügen und bearbeiten oder einen Haltepunkt exportieren möchten, klicken Sie mit der rechten Maustaste darauf, und wählen Sie den entsprechenden Befehl aus, oder bewegen Sie den Mauszeiger darauf, und wählen Sie das Symbol Einstellungen aus.

Typen von Haltepunkten

Visual Studio unterstützt verschiedene Typen von Haltepunkten, um verschiedene Debugszenarien zu unterstützen, z. B. bedingte Haltepunkte, die nur basierend auf angegebenen Kriterien aktiviert werden. Weitere Informationen finden Sie unter Verwenden des richtigen Haltepunkttyps.

Verwalten von Haltepunkten im Fenster „Haltepunkte“

Im Fenster Haltepunkte können Sie sich alle Breakpoints in Ihrer Projektmappe ansehen und sie verwalten. Diese zentrale Position ist besonders hilfreich in einer großen Lösung oder für komplexe Debuggingszenarien, in denen Haltepunkte kritisch sind.

Im Haltepunkte- Fenster können Sie Haltepunkte suchen, sortieren, filtern, aktivieren/deaktivieren oder löschen. Sie können auch Bedingungen und Aktionen festlegen oder eine neue Funktion oder einen neuen Datenhaltepunkt hinzufügen.

Um das Fenster Haltepunkte zu öffnen, wählen Sie Debug>Windows>Haltepunkteaus, oder drücken Sie STRG+ALT+B.

Fenster „Haltepunkte“

Fenster „Haltepunkte“

Klicken Sie auf die Option Spalten anzeigen, um die Spalten auszuwählen, die im Fenster Haltepunkte angezeigt werden sollen. Wählen Sie eine Spaltenüberschrift aus, um die Haltepunkteliste nach dieser Spalte zu sortieren.

Haltepunktbezeichnungen

Sie können Bezeichnungen verwenden, um die Breakpointliste im Fenster Haltepunkte zu sortieren und zu filtern.

  1. Wenn Sie einem Haltepunkt eine Beschriftung hinzufügen möchten, klicken Sie im Quellcode mit der rechten Maustaste auf den Haltepunkt oder das Haltepunkte Fenster, und wählen Sie dann Beschriftungen bearbeitenaus. Fügen Sie eine neue Bezeichnung hinzu, oder wählen Sie eine vorhandene Bezeichnung aus, und wählen Sie dann OKaus.
  2. Sortieren Sie die Breakpointliste im Fenster Haltepunkte, indem Sie Bezeichnungen, Bedingungen oder andere Spaltenüberschriften auswählen. Sie können die anzuzeigenden Spalten auswählen, indem Sie Spalten anzeigen auf der Symbolleiste auswählen.

Haltepunktgruppen

Bei komplexen Debugszenarien können Sie Haltepunktgruppen erstellen, um Ihre Haltepunkte zu organisieren. Auf diese Weise können Sie logische Gruppierungen von Haltepunkten basierend auf dem aktuellen Szenario schnell aktivieren und deaktivieren, das Sie debuggen möchten.

Sie können Haltepunkte im Fenster Haltepunkte erstellen, indem Sie Neu > Haltepunktgruppe auswählen und einen Namen für die Gruppe angeben. Wenn Sie einer Gruppe einen Haltepunkt hinzufügen möchten, klicken Sie mit der rechten Maustaste auf den Haltepunkt, und wählen Sie Zu Haltepunktgruppe hinzufügen><Gruppennamen> aus. Verschieben Sie Ihre Haltepunkte alternativ per Drag & Drop in die gewünschte Gruppe.

Screenshot von Haltepunktgruppen

Um eine Standard-Haltepunktgruppe festzulegen, klicken Sie mit der rechten Maustaste auf die Gruppe und wählen Sie Als Standard-Haltepunktgruppe festlegenaus. Wenn Sie eine Standard-Haltepunktgruppe festlegen, werden der Gruppe automatisch neu erstellte Haltepunkte hinzugefügt.

Exportieren und Importieren von Haltepunkten

Wenn Sie den Status und die Position Ihrer Haltepunkte speichern oder freigeben möchten, können Sie diese Informationen exportieren oder importieren.

Ab Visual Studio 2022, Version 17.12 Preview 3, sind Haltepunktgruppen ebenfalls in den exportierten und importierten Haltepunkten enthalten.

  • Wenn Sie einen einzelnen Breakpoint in eine XML-Datei exportieren möchten, klicken Sie im Quellcode oder im Fenster Haltepunkte mit der rechten Maustaste auf den Breakpoint, und klicken Sie auf Exportieren oder auf Auswahl exportieren. Wählen Sie einen Exportspeicherort aus, und klicken Sie dann auf Speichern. Der Standardspeicherort ist der Lösungsordner.
  • Wenn Sie mehrere Haltepunkte exportieren möchten, wählen Sie im fenster Haltepunkte die Felder neben den Haltepunkten aus, oder geben Sie Suchkriterien in das Feld Suchen ein. Klicken Sie auf das Symbol Alle Haltepunkte exportieren, die mit den aktuellen Suchkriterien übereinstimmen, und speichern Sie die Datei.
  • Wenn Sie alle Breakpoints exportieren möchten, heben Sie die Auswahl für alle Kontrollkästchen auf, und lassen Sie das Feld Suche leer. Klicken Sie auf das Symbol Alle Haltepunkte exportieren, die mit den aktuellen Suchkriterien übereinstimmen, und speichern Sie die Datei.
  • Wenn Sie Haltepunkte importieren möchten, wählen Sie im Fenster Haltepunkte das Symbol Haltepunkte aus einer Datei importieren aus, navigieren Sie zum Speicherort der XML-Datei, und wählen Sie Öffnen aus.

Festlegen von Haltepunkten in Debuggerfenstern

Sie können Haltepunkte ebenfalls in den Debuggerfenstern Aufrufliste und Disassemblierung festlegen.

Festlegen eines Breakpoints im Aufruflistenfenster

Sie können einen Breakpoint im Fenster Aufrufliste festlegen, um die Ausführung bei der Anweisung oder in der Zeile zu unterbrechen, zu der eine aufrufende Funktion zurückkehrt.

So legen Sie im Fenster "Anrufliste" einen Haltepunkt fest:

  1. Das Debuggen muss pausiert sein, wenn Sie das Fenster Aufrufliste öffnen möchten. Klicken Sie auf Debuggen > Fenster > Aufrufliste, oder drücken Sie STRG+ALT+C.

  2. Klicken Sie im Fenster Aufrufliste mit der rechten Maustaste auf die aufrufende Funktion, und wählen Sie anschließend Haltepunkt>Haltepunkt einfügen aus, oder drücken Sie F9.

    Ein Haltepunktsymbol wird neben dem Funktionsaufrufnamen am linken Rand des Aufrufstapels angezeigt.

Im Fenster Haltepunkte wird der Aufruflistenhaltepunkt als Adresse mit Speicherort angezeigt, der der nächsten ausführbaren Anweisung der Funktion entspricht.

Der Debugger unterbricht die Ausführung an der Anweisung.

Weitere Informationen zur Aufrufliste finden Sie unter Vorgehensweise: Verwenden des Fensters „Aufrufliste“.

Weitere Informationen zur visuellen Nachverfolgung während der Codeausführung finden Sie unter Zuordnen von Methoden in der Aufrufliste beim Debuggen.

Festlegen eines Breakpoints im Disassemblierungsfenster

  1. Das Debuggen muss pausiert sein, wenn Sie das Fenster Disassemblierung öffnen möchten. Wählen Sie Debug>Windows>Disassemblyaus, oder drücken Sie STRG+ALT+D.

  2. Klicken Sie im Fenster Demontage in Höhe der Anweisung, an der die Ausführung unterbrochen werden soll, auf den linken Rand. Sie können auch die entsprechende Zeile auswählen und F9 drücken, oder mit der rechten Maustaste klicken und auf Haltepunkt>Haltepunkt einfügen klicken.