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


IDiaEnumStackFrames

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

Методы в том порядке Vtable

Метод

Описание

IDiaEnumStackFrames::Next

Получает заданное число элементов кадра стека из последовательности перечисления.

IDiaEnumStackFrames::Reset

Сбросить последовательность перечисления в начало.

Заметки

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

Для получения этого интерфейса нужно вызвать метод IDiaStackWalker::getEnumFrames OR 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;
        }
    }
}

Требования

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

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

Библиотеки DLL: msdia80.dll

См. также

Ссылки

IDiaStackWalkFrame

IDiaStackWalker::getEnumFrames2

IDiaStackWalker::getEnumFrames

Другие ресурсы

Интерфейсы (SDK для доступа к интерфейсу отладки)