Partilhar via


IDiaEnumStackFrames

Enumera os vários registros de ativação disponíveis.

Métodos na ordem Vtable

Método Descrição
IDiaEnumStackFrames::Next Recupera um número especificado de elementos de registro de ativação da sequência de enumeração.
IDiaEnumStackFrames::Reset Redefine uma sequência de enumeração para o início.

Comentários

Observações para chamadores

Para obter essa interface, chame método IDiaStackWalker::getEnumFrames ou IDiaStackWalker::getEnumFrames2.

Exemplo

Este exemplo mostra como obter e usar a interface IDiaEnumStackFrames. Consulte a interface IDiaStackFrame para obter uma implementação da função 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;
        }
    }
}

Requisitos

Cabeçalho: Dia2.h

Biblioteca: diaguids.lib

DLL: msdia80.dll

Confira também