Поделиться через


Метод ICorDebugStackWalk::GetContext

Возвращает контекст текущего кадра в объекте ICorDebugStackWalk .

Синтаксис

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

Параметры

contextFlags [in] Флаги, указывающие запрошенное содержимое буфера контекста (определено в WinNT.h).

contextBufSize [in] Выделенный размер буфера контекста.

contextSize [out] Фактический размер контекста. Это значение должно быть меньше или равно размеру буфера контекста.

contextBuf [out] Буфер контекста.

Возвращаемое значение

Этот метод возвращает следующие определенные hrESULTs, а также ошибки HRESULT, указывающие на сбой метода.

HRESULT Description
S_OK Контекст текущего кадра был успешно возвращен.
E_FAIL Не удалось вернуть контекст.
HRESULT_FROM_WIN32(ERROR_INSUFFICIENT БУФЕР) Буфер контекста слишком мал.
CORDBG_E_PAST_END_OF_STACK Указатель кадра уже находится в конце стека; Таким образом, к дополнительным кадрам не удается получить доступ.

Exceptions

Замечания

Так как очистка восстанавливает только подмножество регистров, например нелетучие регистры, контекст может не точно соответствовать состоянию регистрации во время вызова.

Требования

Платформ: См. сведения о поддерживаемых операционных системах .NET.

Заголовок: CorDebug.idl, CorDebug.h

Библиотека: CorGuids.lib

Версии .NET: Доступно с .NET Framework 4.0