Метод ICorDebugThread3::GetActiveInternalFrames
Возвращает массив внутренних кадров (объекты ICorDebugInternalFrame2 ) в стеке.
Синтаксис
HRESULT GetActiveInternalFrames
(
[in] ULONG32 cInternalFrames,
[out] ULONG32 *pcInternalFrames,
[in, out,size_is(cInternalFrames), length_is(*pcInternalFrames)]
ICorDebugInternalFrame2 * ppInternalFrames[]
);
Параметры
cInternalFrames
[in] Количество внутренних кадров, ожидаемых в ppInternalFrames
.
pcInternalFrames
[out] Указатель на объект ULONG32
, содержащий количество внутренних кадров в стеке.
ppInternalFrames
[in, out] Указатель на адрес массива внутренних кадров в стеке.
Возвращаемое значение
Этот метод возвращает следующие конкретные результаты HRESULT, а также ошибки HRESULT, которые указывают на сбой метода.
HRESULT | Description |
---|---|
S_OK | Объект ICorDebugInternalFrame2 успешно создан. |
E_INVALIDARG | cInternalFrames не равно нулю и null ppInternalFrames имеет значение , или pcInternalFrames имеет значение null . |
HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER) | ppInternalFrames меньше количества внутренних кадров. |
Исключения
Замечания
Внутренние кадры — это структуры данных, отправленные в стек средой выполнения для хранения временных данных.
При первом вызове GetActiveInternalFrames
параметр должен иметь cInternalFrames
значение 0 (ноль), а ppInternalFrames
параметр имеет значение NULL. При GetActiveInternalFrames
первом возврате pcInternalFrames
содержит количество внутренних кадров в стеке.
GetActiveInternalFrames
затем следует вызвать второй раз. Необходимо передать правильное число (pcInternalFrames
) в cInternalFrames
параметре и указать указатель на соответствующий массив ppInternalFrames
.
Используйте метод ICorDebugStackWalk::GetFrame для возврата фактических кадров стека.
Требования
Платформы: см. раздел Требования к системе.
Заголовок: CorDebug.idl, CorDebug.h
Библиотека: CorGuids.lib
версии платформа .NET Framework: Доступно с 4