Megosztás a következőn keresztül:


ICorDebugStackWalk::GetContext metódus

Az ICorDebugStackWalk objektum aktuális keretének környezetét adja vissza.

Szemantika

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

Paraméterek

contextFlags [in] A környezeti puffer kért tartalmát jelző jelzők (a WinNT.h-ban definiálva).

contextBufSize [in] A környezeti puffer lefoglalt mérete.

contextSize [kifelé] A környezet tényleges mérete. Ennek az értéknek kisebbnek vagy egyenlőnek kell lennie a környezeti puffer méreténél.

contextBuf [kifelé] A környezeti puffer.

Visszaadott érték

Ez a metódus a következő specifikus HRESULT-eket, valamint a metódushibát jelző HRESULT-hibákat adja vissza.

HRESULT Description
S_OK Az aktuális keret környezetének visszaadása sikeresen megtörtént.
E_FAIL A környezet nem adható vissza.
HRESULT_FROM_WIN32(ERROR_INSUFFICIENT PUFFER) A környezeti puffer túl kicsi.
CORDBG_E_PAST_END_OF_STACK A keretmutató már a verem végén van; ezért további keretek nem érhetők el.

Exceptions

Megjegyzések

Mivel a visszatekerés csak a regiszterek egy részhalmazát állítja vissza, például nem változékony regisztereket, előfordulhat, hogy a környezet nem felel meg pontosan a hívás időpontjában a regiszter állapotának.

Requirements

Platformok: Lásd: .NET által támogatott operációs rendszerek.

Fejléc: CorDebug.idl, CorDebug.h

Könyvtár: CorGuids.lib

.NET-verziók: A .NET-keretrendszer 4.0 óta érhető el