Partilhar via


IDiaEnumStackFrames

Enumera os vários quadros de pilha disponíveis.

Métodos na ordem de Vtable

Método

Descrição

IDiaEnumStackFrames::Next

Recupera um número especificado de elementos do quadro de pilha na seqüência de enumeração.

IDiaEnumStackFrames::Reset

Redefine uma seqüência de enumeração para o início.

Comentários

Observações para chamadores

Obter essa interface chamando o IDiaStackWalker::getEnumFrames ou IDiaStackWalker::getEnumFrames2 métodos.

Exemplo

Este exemplo mostra como obter e usar o IDiaEnumStackFrames interface.Consulte o IDiaStackFrame interface para uma implementação da PrintStackFrame função.

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;
        }
    }
}

Requisitos

Cabeçalho: Dia2.h

Biblioteca: diaguids.lib

DLL: msdia80.dll

Consulte também

Referência

IDiaStackWalkFrame

IDiaStackWalker::getEnumFrames2

IDiaStackWalker::getEnumFrames

Outros recursos

Interfaces (Debug Interface Access SDK)