Dela via


ICorDebugStackWalk::GetContext-metod

Returnerar kontexten för den aktuella ramen i ICorDebugStackWalk-objektet .

Syntax

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

Parametrar

contextFlags [i] Flaggor som anger det begärda innehållet i kontextbufferten (definieras i WinNT.h).

contextBufSize [i] Kontextbuffertens allokerade storlek.

contextSize [ut] Kontextens faktiska storlek. Det här värdet måste vara mindre än eller lika med kontextbuffertens storlek.

contextBuf [ut] Kontextbufferten.

Returvärde

Den här metoden returnerar följande specifika HRESULT-fel samt HRESULT-fel som indikerar metodfel.

HRESULT beskrivning
S_OK Kontexten för den aktuella ramen returnerades.
E_FAIL Det gick inte att returnera kontexten.
HRESULT_FROM_WIN32(ERROR_INSUFFICIENT BUFFER) Kontextbufferten är för liten.
CORDBG_E_PAST_END_OF_STACK Bildrutepekaren är redan i slutet av stacken. Därför går det inte att komma åt några ytterligare bildrutor.

Undantag

Kommentarer

Eftersom avspolning endast återställer en delmängd av register, till exempel icke-flyktiga register, kanske kontexten inte exakt matchar registertillståndet vid tidpunkten för anropet.

Krav

Plattformar: Se Systemkrav.

Rubrik: CorDebug.idl, CorDebug.h

Bibliotek: CorGuids.lib

.NET Framework-versioner: Finns sedan 4

Se även