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


IDiaEnumStackFrames

Перечисляет доступные различные кадры стека.

Методы в порядке таблицы Vtable

Метод Description
IDiaEnumStackFrames::Next Извлекает указанное количество элементов кадра стека из последовательности перечисления.
IDiaEnumStackFrames::Reset Сбрасывает последовательность перечисления в начало.

Замечания

Заметки для вызывающих абонентов

Получите этот интерфейс, вызвав методы IDiaStackWalker::getEnumFrames или IDiaStackWalker::getEnumFrames2 .

Пример

В этом примере показано, как получить и использовать IDiaEnumStackFrames интерфейс. См. интерфейс IDiaStackFrame для реализации PrintStackFrame функции.

void DumpStackFrames(IDiaStackWalker*     pStackWalker,
                     IDiaStackWalkHelper* pStackWalkHelper,
                     CV_CPU_TYPE_e        cpuType)
{
    if (pStackWalker != NULL && pStackWalkHelper != NULL)
    {
        CComPtr<IDiaEnumStackFrames> pEnumsFrames;
        HRESULT hr;
        hr = pStackWalker->getEnumFrames2(cpuType, pStackWalkHelper, &pEnumFrames);
        if (SUCCEEDED(hr) && pEnumFrames != NULL)
        {
            CComPtr<IDiaStackFrame> pStackFrame;
            DWORD celt = 0;

            while (pEnumFrames->Next(1, &pStackFrame, &celt) == S_OK)
            {
                PrintStackFrame(pStackFrame);
            }
            pStackFrame = NULL;
        }
    }
}

Requirements

Заголовок: Dia2.h

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

DLL: msdia80.dll

См. также