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


Метод 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] Буфер контекста.

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

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

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

Исключения

Замечания

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

Требования

Платформы: см. раздел Требования к системе.

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

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

версии платформа .NET Framework: Доступно с 4

См. также