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.
Eine Debug-Engine (DE) muss das Setzen von Haltepunkten unterstützen. Das Debuggen von Visual Studio unterstützt die folgenden Typen von Haltepunkten:
Gebunden
Angefordert über die Benutzeroberfläche und erfolgreich an einen angegebenen Codespeicherort gebunden
Ausstehend
Angefordert über die Benutzeroberfläche, aber noch nicht an tatsächliche Anweisungen gebunden
Diskussion (Discussion)
Beispielsweise tritt ein ausstehender Haltepunkt auf, wenn die Anweisungen noch nicht geladen werden. Wenn der Code geladen wird, versuchen ausstehende Haltepunkte, eine Bindung an Code an der vorgeschriebenen Position, d. h. zum Einfügen von Unterbrechungsanweisungen in den Code. Ereignisse werden an den Sitzungsdebug-Manager (SDM) gesendet, um eine erfolgreiche Bindung anzugeben oder zu benachrichtigen, dass Bindungsfehler aufgetreten sind.
Ein noch nicht aktivierter Haltepunkt verwaltet auch seine eigene interne Liste der entsprechenden gebundenen Haltepunkte. Ein ausstehender Haltepunkt kann dazu führen, dass viele Haltepunkte in den Code eingefügt werden. Die Visual Studio-Debug-Benutzeroberfläche zeigt eine Strukturansicht ausstehender Haltepunkte und der entsprechenden gebundenen Haltepunkte an.
Für die Erstellung und Verwendung von ausstehenden Haltepunkten ist die Implementierung der IDebugEngine2::CreatePendingBreakpoint-Methode sowie die folgenden Methoden von IDebugPendingBreakpoint2-Schnittstellen erforderlich.
| Methode | Description |
|---|---|
| CanBind | Bestimmt, ob ein definierter ausstehender Haltepunkt an einen Codeort gebunden werden kann. |
| Binden | Bindet einen angegebenen schwebenden Haltepunkt an eine oder mehrere Codepositionen. |
| GetState- | Ruft den Status eines ausstehenden Haltepunkts ab. |
| GetBreakpointRequest | Ruft die Breakpoint-Anforderung ab, die verwendet wird, um einen Pending Breakpoint zu erstellen. |
| Aktivieren | Schaltet den aktivierten Status eines ausstehenden Haltepunkts um. |
| EnumBoundBreakpoints | Listet alle Unterbrechungspunkte auf, die von einem ausstehenden Unterbrechungspunkt gebunden sind. |
| EnumErrorBreakpoints | Listet alle Fehlertrennpunkte auf, die aus einem ausstehenden Haltepunkt resultieren. |
| Löschen | Löscht einen ausstehenden Haltepunkt und alle damit verknüpften Haltepunkte. |
Um die gebundenen Haltepunkte und Fehlerhaltepunkte aufzulisten, müssen Sie alle Methoden von IEnumDebugBoundBreakpoints2 und von IEnumDebugErrorBreakpoints2 implementieren.
Wartende Haltepunkte, die an eine Codestelle gebunden sind, erfordern die Implementierung der folgenden IDebugBoundBreakpoint2-Methoden.
| Methode | Description |
|---|---|
| GetPendingBreakpoint | Ruft den ausstehenden Haltepunkt ab, der einen Haltepunkt enthält. |
| GetState- | Ruft den Status eines gebundenen Haltepunkts ab. |
| GetBreakpointResolution | Ruft die Haltepunktauflösung ab, die einen Haltepunkt beschreibt. |
| Aktivieren | Aktiviert oder deaktiviert einen Haltepunkt. |
| Löschen | Löscht einen gebundenen Haltepunkt. |
Lösungs- und Anforderungsinformationen erfordern die Implementierung der folgenden IDebugBreakpointResolution2-Methoden .
| Methode | Description |
|---|---|
| GetBreakpointType | Ruft den Typ des Haltepunkts ab, der durch eine Auflösung dargestellt wird. |
| GetResolutionInfo | Ruft die Haltepunktauflösungsinformationen ab, die einen Haltepunkt beschreiben. |
Die Lösung von Fehlern, die während der Bindung auftreten können, erfordert die Implementierung der folgenden IDebugErrorBreakpoint2-Methoden .
| Methode | Description |
|---|---|
| GetPendingBreakpoint | Ruft den anstehenden Haltepunkt ab, der einen Fehlerhaltepunkt enthält. |
| GetBreakpointResolution | Ruft die Fehler-Haltepunktauflösung ab, die einen Fehler-Haltepunkt beschreibt. |
Die Lösung von Fehlern, die während der Bindung auftreten können, erfordert auch die folgenden Methoden von IDebugErrorBreakpointResolution2.
| Methode | Description |
|---|---|
| GetBreakpointType | Ruft den Typ eines Haltepunkts ab. |
| GetResolutionInfo | Ruft die Auflösungsinformationen eines Haltepunkts ab. |
Zum Anzeigen des Quellcodes an einem Haltepunkt müssen Sie die Methoden IDebugStackFrame2::GetDocumentContext und/oder IDebugStackFrame2::GetCodeContext implementieren.