Freigeben über


Allgemeine Debugoptionen

Wenn Sie Visual Studio-Debuggeroptionen festlegen möchten, wählen Sie "Extras>"-Optionen aus, und aktivieren oder deaktivieren Sie unter "Debuggen " die Kontrollkästchen neben den Optionen "Allgemein ". Sie können alle Standardeinstellungen mit Tools>Import- und Exporteinstellungen wiederherstellen>Alle Einstellungenzurücksetzen. Wenn Sie eine Teilmenge von Einstellungen zurücksetzen möchten, speichern Sie Ihre Einstellungen mit dem Import- und Exporteinstellungen-Assistenten, bevor Sie die änderungen vornehmen, die Sie testen möchten, und importieren Sie ihre gespeicherten Einstellungen anschließend.

Sie können die folgenden allgemeinen Optionen festlegen:

Vor Löschen aller Haltepunkte fragen: Dies erfordert eine Bestätigung vor dem Abschließen des Befehls Alle Haltepunkte löschen.

Alle Prozesse anhalten, wenn ein Prozess anhält: Alle Prozesse, an die der Debugger angefügt ist, werden gleichzeitig unterbrochen, wenn eine Unterbrechung auftritt.

Unterbrechung, wenn Ausnahmen über AppDomain- oder verwaltete/native Grenzen hinweg gehen: Beim Debuggen im verwalteten oder gemischten Modus kann die Common Language Runtime Ausnahmen fangen, die Anwendungsdomänengrenzen oder verwaltete/native Grenzen überschreiten, wenn drei Bedingungen erfüllt sind.

  • Bedingung 1: Wenn systemeigener Code verwalteten Code mithilfe von COM-Interop aufruft und der verwaltete Code eine Ausnahme auslöst. Weitere Informationen finden Sie unter Einführung in COM-Interop.

  • Bedingung 2: Wenn verwalteter Code in Anwendungsdomäne 1 ausgeführt wird, ruft verwalteten Code in Anwendungsdomäne 2 auf, und der Code in Anwendungsdomäne 2 löst eine Ausnahme aus. Siehe Programmierung mit Anwendungsdomänen.

  • Bedingung 3: Wenn Code eine Funktion mithilfe von Spiegelung aufruft und diese Funktion eine Ausnahme auslöst. Weitere Informationen finden Sie unter Reflexion.

  • Bei den Bedingungen 2 und 3 wird die Ausnahme manchmal von verwaltetem Code in mscorlib statt von der Common Language Runtime abgefangen. Diese Option wirkt sich nicht auf das Abfangen von Ausnahmen aus, die von mscorlib gefangen werden.

Debugging auf Adressebene aktivieren: Hiermit werden erweiterte Features für das Debuggen auf Adressebene aktiviert (Fenster Disassemblierung, Fenster Register und Adresshaltepunkte).

  • Disassemblierung anzeigen, wenn der Quellcode nichtverfügbar ist: Zeigt automatisch das Fenster Disassemblierung an, wenn Sie Code debuggen, für den der Quellcode nicht verfügbar ist.

Aktivieren von Haltepunktfiltern: Ermöglicht das Festlegen von Filtern auf Haltepunkte, sodass sie sich nur auf bestimmte Prozesse, Threads oder Computer auswirken.

Verwenden Sie das neue Ausnahmehilfsprogramm: Aktiviert die Ausnahmehilfe, die den Ausnahme-Assistenten ersetzt. (Ausnahmehilfsprogramm wird ab Visual Studio 2017 unterstützt)

Anmerkung

Für verwalteten Code lautete diese Option früher Ausnahme-Assistenten aktivieren.

Just My Code aktivieren: Der Debugger zeigt nur den Benutzercode an und erlaubt das Schrittweise Einsteigen in den Benutzercode ("Mein Code"), während er Systemcode und anderen Code ignoriert, der optimiert ist oder keine Debugsymbole enthält.

  • Warnen, wenn kein Benutzercode beim Start vorhanden ist (nur verwaltet): Wenn das Debugging mit aktiviertem Just My Code beginnt, warnt Sie diese Option, falls kein Benutzercode vorhanden ist.

Durchlaufen des .NET Framework-Quellcodes aktivieren: Diese Option ermöglicht es dem Debugger, den .NET Framework-Quellcode schrittweise auszuführen. Wenn Sie diese Option aktivieren, wird "Just My Code" automatisch deaktiviert. .NET Framework-Symbole werden an einen Cachespeicherort heruntergeladen. Sie können den Cache-Speicherort im Abschnitt Debugging>Symbole>Suchpfade mit der Option Cache-Symbole in diesem Verzeichnis ändern.

Durchlaufen des .NET Framework-Quellcodes aktivieren: Diese Option ermöglicht es dem Debugger, den .NET Framework-Quellcode schrittweise auszuführen. Wenn Sie diese Option aktivieren, wird "Just My Code" automatisch deaktiviert. .NET Framework-Symbole werden an einen Cachespeicherort heruntergeladen. Sie können den Cachespeicherort im Abschnitt ">" mit den Cachesymbolen in dieser Verzeichnisoption ändern.

Automatische Deoptimierung von debuggeten Funktionen nach Möglichkeit (.Net 8+, C++ Dynamisches Debuggen): Wenn diese Option ausgewählt ist, werden debuggete Funktionen deoptimiert, um eine umfassendere Debuggerfahrung zu ermöglichen.

JiT-Optimierung beim Laden des Moduls unterdrücken (nur verwaltet): Deaktiviert die JIT-Optimierung von verwaltetem Code, wenn ein Modul geladen wird und JIT kompiliert wird, während der Debugger angefügt ist. Das Deaktivieren der Optimierung erleichtert möglicherweise das Debuggen einiger Probleme, obwohl auf Kosten der Leistung. Wenn Sie Just My Code verwenden, kann das Unterdrücken der JIT-Optimierung dazu führen, dass nichtbenutzerischer Code als Benutzercode angezeigt wird ("Mein Code"). Weitere Informationen finden Sie unter JIT-Optimierung und Debugging.

Konfigurieren Sie die Verwendung von vorkompilierten Bildern (nur verwaltet): Wenn Sie diesen Link auswählen, wird das Dialogfeld " Optionen für den Visual Studio-Debugger" geöffnet. Um die Option zu aktivieren, aktivieren Sie das Kontrollkästchen " Verhindern" mit vorkompilierten Bildern beim Laden des Moduls , und wählen Sie "OK" aus. Wenn diese Option ausgewählt ist, wird das Laden von NGEN oder von vorkompilierten Bildern (RDR) deaktiviert.

Verhindern Sie die Verwendung von vorkompilierten Images beim Laden des Moduls (nur für verwaltete Umgebungen, wird beim Neustart zurückgesetzt): Deaktiviert das Laden von vorkompilierten Images wie NGEN oder Bereit zum Laden (RDR).

Konfigurieren des Just-in-Time-Debuggings: Wenn Sie diesen Link auswählen, wird das Dialogfeld " Debuggeroptionen" von Visual Studio geöffnet. Um die Option zu aktivieren, wählen Sie das Kontrollkästchen Just-in-Time-Debugging für diese Codetypen aktivieren aus. Wählen Sie einen oder mehrere Codetypen aus: Systemeigene und verwaltete (.NET Framework), und wählen Sie dann OK aus. Mit dieser Option wird das Just-in-Time-Debugging für die ausgewählten Codetypen aktiviert.

Überspringen von Eigenschaften und Operatoren (nur verwaltet): Verhindert, dass der Debugger in Eigenschaften und Operatoren im verwalteten Code hineingelangt.

Aktivieren der Eigenschaftenauswertung und anderer impliziter Funktionsaufrufe: Aktiviert die automatische Auswertung von Eigenschaften und impliziten Funktionsaufrufen in Variablenfenstern und das Dialogfeld QuickWatch-.

  • Aufrufen der Zeichenfolgenkonvertierungsfunktion für Objekte in Variablenfenstern: Führt einen impliziten Zeichenfolgenkonvertierungsaufruf aus, wenn Objekte in Variablenfenstern ausgewertet werden. Das Ergebnis wird anstelle des Typnamens als Zeichenfolge angezeigt. Gilt nur beim Debuggen im C#-Code. Diese Einstellung kann durch das DebuggerDisplay-Attribut überschrieben werden (siehe Verwenden des DebuggerDisplay-Attributs).

Aktivieren der Quellserverunterstützung: Weist den Visual Studio-Debugger an, Quelldateien von Quellservern abzurufen, die das SrcSrv (srcsrv.dll)-Protokoll implementieren. Team Foundation Server und die Debuggingtools für Windows sind zwei Quellserver, die das Protokoll implementieren. Weitere Informationen zum SrcSrv-Setup finden Sie in der dokumentation SrcSrv. Zusätzliche Informationen finden Sie unter Angeben von Symboldateien (PDB) und Quelldateien.

Wichtig

Da das Lesen von .pdb Dateien dazu führen kann, dass beliebiger Code in den Dateien ausgeführt wird, stellen Sie sicher, dass Sie dem Server vertrauen.

  • Diagnosemeldungen des Quellservers im Ausgabefensterdrucken: Wenn die Quellserverunterstützung aktiviert ist, aktiviert diese Einstellung die Diagnoseanzeige.

  • Quellserver nur für teilweise vertrauenswürdige Assemblys zulassen (nur verwaltet): Wenn die Quellserverunterstützung aktiviert ist, setzt diese Einstellung das Standardverhalten außer Kraft, dass keine Quellen für teilweise vertrauenswürdige Assemblys abgerufen werden.

  • Immer nicht vertrauenswürdige Quellserverbefehle ausführen, ohneaufzufordern: Wenn die Quellserverunterstützung aktiviert ist, setzt diese Einstellung das Standardverhalten der Eingabeaufforderung beim Ausführen eines nicht vertrauenswürdigen Befehls außer Kraft.

Unterstützung von Quelllinksaktivieren: Weist den Visual Studio-Debugger an, Quelldateien für PDB--Dateien herunterzuladen, die Quelllinkinformationen enthalten. Weitere Informationen zum Quelllink finden Sie in der Spezifikation Quelllink.

Wichtig

Da Quelllink Dateien mithilfe von HTTP oder HTTPS herunterlädt, stellen Sie sicher, dass Sie der PDB-Datei vertrauen.

  • Zurückgreifen auf die Git Credential Manager-Authentifizierung für alle Source Link-Anfragen: Wenn die Source Link-Unterstützung aktiviert ist und eine Source Link-Anfrage die Authentifizierung schlägt, ruft Visual Studio den Git Credential Manager auf.

Gesamte Quellzeile für Haltepunkte und aktuelle Anweisung hervorheben (nur C++): Wenn der Debugger einen Haltepunkt oder eine aktuelle Anweisung hervorhebung, wird die gesamte Zeile hervorgehoben.

Quelldateien müssen exakt mit der ursprünglichen Version übereinstimmen: Weist den Debugger an, zu überprüfen, ob eine Quelldatei mit der Version des Quellcodes übereinstimmt, mit dem die ausführbare Datei erstellt wird, die Sie debuggen. Wenn die Version nicht übereinstimmt, werden Sie aufgefordert, eine übereinstimmende Quelle zu finden. Wenn keine übereinstimmende Quelle gefunden wird, wird der Quellcode beim Debuggen nicht angezeigt.

Gesamten Text aus Ausgabefenster an das Direktfenster umleiten: Hiermit werden alle Debuggernachrichten, die normalerweise im Fenster Ausgabe angezeigt werden, stattdessen im Fenster Direkt angezeigt.

Unformatierte Struktur von Objekten in Variablenfensternanzeigen: Deaktiviert alle Anpassungen der Objektstrukturansicht. Weitere Informationen zu Ansichtsanpassungen finden Sie unter Erstellen benutzerdefinierter Ansichten verwalteter Objekte.

JavaScript-Debugging für ASP.NET (Chrome und Edge) aktivieren: Aktiviert den Skriptdebugger für ASP.NET-Apps. Bei der ersten Verwendung in Chrome müssen Sie sich möglicherweise beim Browser anmelden, um Chrome-Erweiterungen zu aktivieren, die Sie installiert haben. Deaktivieren Sie diese Option, um das Legacyverhalten wiederhergestellt zu können.

JavaScript-Debugging für ASP.NET (Chrome, Edge und IE) aktivieren: Aktiviert den Skriptdebugger für ASP.NET-Apps. Bei der ersten Verwendung in Chrome müssen Sie sich möglicherweise beim Browser anmelden, um Chrome-Erweiterungen zu aktivieren, die Sie installiert haben. Deaktivieren Sie diese Option, um das Legacyverhalten wiederhergestellt zu können.

Laden dll-Exporte (nur systemeigene): Lädt DLL-Exporttabellen. Symbolinformationen aus DLL-Exporttabellen können hilfreich sein, wenn Sie mit Windows-Nachrichten, Windows-Prozeduren (WindowProcs), COM-Objekten oder Marshaling oder einer dll arbeiten, für die Sie keine Symbole haben. Das Lesen von DLL-Exportinformationen erfordert einen gewissen Aufwand. Daher ist diese Funktion standardmäßig deaktiviert.

  • Verwenden Sie dumpbin /exports, um zu sehen, welche Symbole in der Exporttabelle einer DLL verfügbar sind. Symbole sind für eine beliebige 32-Bit-System-DLL verfügbar. Durch Lesen der dumpbin /exports Ausgabe können Sie den genauen Funktionsnamen sehen, einschließlich nichtalphanumerischer Zeichen. Dies ist nützlich, um einen Haltepunkt für eine Funktion festzulegen. Funktionsnamen aus DLL-Exporttabellen könnten an anderen Stellen im Debugger gekürzt erscheinen. Die Aufrufe werden in der Aufrufreihenfolge aufgelistet, wobei die aktuelle Funktion (die am tiefsten geschachtelte) oben angezeigt wird. Weitere Informationen finden Sie unter dumpbin /exports.

Ausnahmen für den GPU-Speicherzugriff ignorieren, wenn der Wert durch die geschriebenen Daten nicht geändert wurde: Hiermit werden Racebedingungen ignoriert, die beim Debuggen erkannt wurden, wenn sich die Daten nicht geändert haben. Weitere Informationen finden Sie unter Debuggen von GPU-Code.

Warnen Sie beim Verwenden von benutzerdefinierten Debuggerschnellansichten für potenziell unsichere Prozesse (nur verwaltet): Visual Studio warnt Sie, wenn Sie eine benutzerdefinierte Debuggerschnellansicht verwenden, die Code im debuggierten Prozess ausführt, da möglicherweise unsicherer Code ausgeführt wird.

Windows Debug-Heap-Allocator aktivieren (nur für native Anwendungen): Aktiviert den Windows-Debug-Heap, um die Heap-Diagnostik zu verbessern. Das Aktivieren dieser Option wirkt sich auf die Debuggingleistung aus.

Diagnosetools beim Debuggen aktivieren: Das Fenster "Diagnosetools " wird angezeigt, während Sie debuggen.

Anzeigen der verstrichenen Zeit perfTip beim Debuggen: Im Codefenster wird die verstrichene Zeit eines bestimmten Methodenaufrufs angezeigt, wenn Sie debuggen.

Hot Reload aktivieren: Aktiviert die Hot Reload-Funktion beim Debuggen.

  • Automatisches Anwenden von Änderungen auf "Weiter" (nur systemintern): Visual Studio kompiliert automatisch und wendet alle ausstehenden Codeänderungen an, die Sie vorgenommen haben, wenn der Prozess aus einem Unterbrechungszustand fortgesetzt wird. Ist diese Option nicht aktiviert, können Sie Änderungen mit der Option Codeänderungen übernehmen im Menü Debuggen übernehmen.

  • Vor veraltetem Code warnen (nur für native Systeme): Warnungen zu veraltetem Code erhalten.

Schaltfläche "Ausführen bis zum Klick" beim Debuggen anzeigen: Wenn diese Option ausgewählt ist, wird die Schaltfläche "Ausführen bis zum Klick" beim Debuggen angezeigt.

Die Konsole automatisch schließen, wenn das Debuggen beendet wird: Teilt Visual Studio mit, die Konsole am Ende einer Debugsitzung zu schließen.

Schnelle Ausdrucksauswertung aktivieren (nur für verwalteten Code): Ermöglicht es dem Debugger, eine schnellere Auswertung zu versuchen, indem er die Ausführung einfacher Eigenschaften und Methoden simuliert.

Laden von Debugsymbolen im externen Prozess (nur nativ): Aktiviert diese Speicheroptimierung beim Debuggen.

Stellen Sie Visual Studio in den Vordergrund, wenn der Debugger unterbrochen wird: Wechselt Visual Studio in den Vordergrund, wenn Sie im Debugger anhalten.

Halten Sie erweiterte Datentipps geöffnet, bis Sie davon wegklicken: Wenn diese Option ausgewählt ist, bleibt ein erweiterter Datentipp geöffnet, bis Sie wegklicken.

Aktivieren Sie den Knoten "Externe Quellen" im Projektmappen-Explorer: Wenn ausgewählt, wird der dekompilierte Code unter dem Knoten "Externe Quellen" angezeigt.

Automatische Dekompilierung in Quelltext bei Bedarf (nur verwaltet): Wenn diese Option ausgewählt ist, wird externer .NET-Code automatisch dekompiliert, wenn in externen Code eingestiegen wird.

Hervorheben der aktuellen Anweisung und Anweisungen mit Haltepunkten: Wenn der Debugger einen Haltepunkt oder die aktuelle Anweisung hervorhebt, wird die gesamte Zeile hervorgehoben.

Anzeigen von Variablenwerten inline im Editor beim Debuggen: Anzeigen der Werte für Variablen in der hervorgehobenen Anweisung im Debugger.

  • Inline-Anzeige von Rückgabewerten: Rückgabewerte für die hervorgehobene Anweisung im Debugger anzeigen.

  • Funktionsargumentwerte inline anzeigen: Anzeigen der Werte für Funktionsargumente in der hervorgehobenen Anweisung im Debugger.

  • Aktuelle Zeilenausdruckswerte inline anzeigen: Zeigen Sie die Werte für Ausdrücke in der aktuellen Zeile im Debugger an.

In älteren Versionen von Visual Studio verfügbare Optionen

Wenn Sie eine ältere Version von Visual Studio verwenden, sind möglicherweise einige andere Optionen vorhanden.

Enable Edge Developer Tools for UWP JavaScript Apps (Experimental): Aktiviert Entwicklertools für UWP-JavaScript-Apps in Microsoft Edge.

Legacy-Chrome-JavaScript-Debugger für ASP.NETaktivieren: Aktiviert den älteren JavaScript-Skriptdebugger für ASP.NET-Apps. Bei der ersten Verwendung in Chrome müssen Sie sich möglicherweise beim Browser anmelden, um Chrome-Erweiterungen zu aktivieren, die Sie installiert haben.

Den Ausnahme-Assistenten aktivieren: Bei verwaltetem Code wird der Ausnahme-Assistent aktiviert. Ab Visual Studio 2017 ersetzte die Ausnahmehilfe den Ausnahme-Assistenten.

Aufrufliste für Ausnahmefehler entladen: Durch diese Option wird für das Fenster Aufrufliste ein Rollback der Aufrufliste an den Punkt vor dem Auftreten des Ausnahmefehlers ausgeführt.

Verwenden Sie experimentelle Methoden, um das Chrome JavaScript-Debugging zu starten, wenn Visual Studio als Administrator ausgeführt wird: Teilt Visual Studio mit, eine neue Methode auszuprobieren, um Chrome während des JavaScript-Debuggings zu starten.

Warnen, wenn beim Start keine Symbole vorhanden sind (nur nativ): Zeigt ein Warndialogfeld an, wenn Sie ein Programm debuggen, für das der Debugger keine Symbolinformationen hat.

Warnen, wenn das Skriptdebugging beim Startendeaktiviert ist: Zeigt ein Warndialogfeld an, wenn der Debugger mit deaktiviertem Skriptdebugging gestartet wird.

Siehe auch