Freigeben über


ICorDebugStackWalk::GetContext-Methode

Gibt den Kontext für den aktuellen Frame im ICorDebugStackWalk-Objekt zurück.

HRESULT GetContext([in]  ULONG32 contextFlags,
                   [in]  ULONG32 contextBufSize,
                   [out] ULONG32* contextSize,
                   [out, size_is(contextBufSize)] BYTE contextBuf[]);

Parameter

  • contextFlags
    [in] Flags, die den angeforderten Inhalt des Kontextpuffers (in WinNT.h definiert) angeben.

  • contextBufSize
    [in] Die Größe des reservierten Kontextpuffers.

  • contextSize
    [out] Die tatsächliche Größe des Kontexts. Dieser Wert muss kleiner oder gleich der Größe des Kontextpuffers sein.

  • contextBuf
    [out] Der Kontextpuffer.

Rückgabewert

Diese Methode gibt die folgenden spezifischen HRESULTs sowie HRESULT-Fehler für Methodenfehler zurück.

HRESULT

Beschreibung

S_OK

Der Kontext für den aktuellen Frame wurde erfolgreich zurückgegeben.

E_FAIL

Der Kontext konnte nicht zurückgegeben werden.

HRESULT_FROM_WIN32(ERROR_INSUFFICIENT BUFFER)

Der Kontextpuffer ist zu klein.

CORDBG_E_PAST_END_OF_STACK

Der Framezeiger befindet sich bereits am Ende des Stapels, daher kann auf keine weiteren Frames zugegriffen werden.

Hinweise

Da beim Entladen nur eine Teilmenge der Register, z. B. nicht flüchtige Register, wiederhergestellt wird, stimmt der Kontext möglicherweise nicht genau mit dem Registerzustand zum Zeitpunkt des Aufrufs überein.

Anforderungen

Plattformen: siehe Systemanforderungen für .NET Framework.

Header: CorDebug.idl, CorDebug.h

Bibliothek: CorGuids.lib

.NET Framework-Versionen: 4

Siehe auch

Weitere Ressourcen

Debugschnittstellen

Debuggen (Referenz zur nicht verwalteten API)