다음을 통해 공유


IDiaEnumStackFrames

사용 가능한 다양한 스택 프레임을 열거합니다.

Vtable 순서의 메서드

메서드 설명
IDiaEnumStackFrames::Next 열거형 시퀀스에서 지정된 수의 스택 프레임 요소를 검색합니다.
IDiaEnumStackFrames::Reset 열거형 시퀀스를 초기화합니다.

설명

호출자 참고 사항

IDiaStackWalker::getEnumFrames 또는 IDiaStackWalker::getEnumFrames2 메서드를 호출하여 이 인터페이스를 가져옵니다.

예시

이 예제에서는 IDiaEnumStackFrames 인터페이스를 가져오고 사용하는 방법을 보여 줍니다. PrintStackFrame 함수 구현은 IDiaStackFrame 인터페이스를 참조하세요.

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

참고 항목