Freigeben über


Debuggerkomponenten

Der Visual Studio-Debugger wird als VSPackage implementiert und verwaltet die gesamte Debugsitzung. Die Debugsitzung umfasst die folgenden Elemente:

  • Debugpaket: Der Visual Studio-Debugger stellt die gleiche Benutzeroberfläche bereit, unabhängig davon, was gedebuggt wird.

  • Sitzungsdebug-Manager (SDM): Stellt eine konsistente programmgesteuerte Schnittstelle zum Visual Studio-Debugger für die Verwaltung einer Vielzahl von Debugmodulen bereit. Sie wird von Visual Studio implementiert.

  • Prozessdebug-Manager (PDM): Verwaltet für alle ausgeführten Instanzen von Visual Studio eine Liste aller Programme, die gedebuggt werden können oder werden. Sie wird von Visual Studio implementiert.

  • Debugmodul (DE): Ist verantwortlich für die Überwachung eines zu debuggenden Programms, die Kommunikation des Zustands des ausgeführten Programms an SDM und PDM und die Interaktion mit dem Ausdrucks-Evaluator und Symbolanbieter, um die Echtzeitanalyse des Zustands des Arbeitsspeichers und variablen eines Programms bereitzustellen. Sie wird von Visual Studio (für die unterstützten Sprachen) und Drittanbietern implementiert, die ihre eigene Laufzeit unterstützen möchten.

  • Ausdrucksauswertung (EE): Bietet Unterstützung für die dynamische Auswertung von Variablen und Ausdrücken, die vom Benutzer bereitgestellt werden, wenn ein Programm an einem bestimmten Punkt beendet wurde. Sie wird von Visual Studio (für die unterstützten Sprachen) und Drittanbietern implementiert, die ihre eigenen Sprachen unterstützen möchten.

  • Symbolanbieter (SP): Auch als Symbolhandler bezeichnet, werden die Debugsymbole eines Programms einer ausgeführten Instanz des Programms zugeordnet, sodass aussagekräftige Informationen bereitgestellt werden können (z. B. Debuggen auf Quellcodeebene und Ausdrucksauswertung). Sie wird von Visual Studio (für die Common Language Runtime [CLR]-Symbole und das Dateiformat "Program DataBase [PDB]" und von Drittanbietern implementiert, die über eine eigene proprietäre Methode zum Speichern von Debuginformationen verfügen.

    Das folgende Diagramm zeigt die Beziehung zwischen diesen Elementen des Visual Studio-Debuggers.

    Übersicht über Debuggingkomponenten

In diesem Abschnitt

Das Debugpaket beschreibt das Debugpaket, das in der Visual Studio-Shell ausgeführt wird und die gesamte Benutzeroberfläche behandelt.

Der Prozessdebug-Manager bietet einen Überblick über die Features des PDM, bei dem es sich um den Manager der Prozesse handelt, die gedebuggt werden können.

Der Sitzungsdebug-Manager definiert das SDM, das eine einheitliche Ansicht der Debugsitzung für die IDE bereitstellt. Die SDM verwaltet die DE.

Das Debugmodul dokumentiert die von der DE bereitgestellten Debugdienste.

Betriebsmodi bieten eine Übersicht über die drei Modi, in denen die IDE ausgeführt werden kann: Entwurfsmodus, Ausführungsmodus und Unterbrechungsmodus. Darüber hinaus werden Übergangsmechanismen erörtert.

Der Ausdrucksauswerter erläutert den Zweck des EE zur Laufzeit.

Der Symbolanbieter beschreibt, wie der Symbolanbieter bei der Implementierung Variablen und Ausdrücke auswertet.

Typvisualisierer und benutzerdefinierter Viewer erläutert, was ein Typvisualisierer und ein benutzerdefinierter Viewer sind und welche Rolle der Ausdrucksauswerter bei der Unterstützung beider spielt.

Debuggerkonzepte beschreiben die wichtigsten Architekturkonzepte für das Debuggen.

Debuggerkontexte erläutern, wie die DE gleichzeitig in Code-, Dokumentations- und Ausdrucksauswertungskontexten ausgeführt wird. Beschreibt für jeden der drei Kontexte den Ort, die Lage oder Bewertung, die dafür relevant ist.

Debugaufgaben enthalten Links zu verschiedenen Debugaufgaben, z. B. starten eines Programms und Auswerten von Ausdrücken.

Siehe auch