Dela via


ICorDebugStackWalk::SetContext-metod

Anger ICorDebugStackWalk-objektets aktuella kontext till en giltig kontext för tråden.

Syntax

HRESULT SetContext([in] CorDebugSetContextFlag flag,
                   [in] ULONG32 contextSize,
                   [in, size_is(contextSize)] BYTE context[]);

Parametrar

flag [i] En CorDebugSetContextFlag-flagga som anger om kontexten kommer från den aktiva ramen i stacken eller en kontext som erhålls genom att koppla bort stacken.

contextSize [i] Buffertens CONTEXT allokerade storlek.

context [i] Bufferten CONTEXT .

Returvärde

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

HRESULT beskrivning
S_OK Objektets ICorDebugStackWalk kontext har angetts.
E_FAIL Objektets ICorDebugStackWalk kontext har inte angetts.
E_INVALIDARG Kontexten är null.
HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER) Kontextbufferten är för liten.

Undantag

Kommentarer

Den här metoden ändrar inte trådens aktuella kontext.

Om du ställer in den aktuella kontexten på en ogiltig kontext kan det orsaka oförutsägbara resultat från stack-rollatorn.

Du kan hämta en exakt bitvis kopia av den här kontexten genom att omedelbart anropa metoden ICorDebugStackWalk::GetContext .

Krav

Plattformar: Se Systemkrav.

Rubrik: CorDebug.idl, CorDebug.h

Bibliotek: CorGuids.lib

.NET Framework-versioner: Finns sedan 4

Se även