共用方式為


IDiaEnumStackFrames

列舉各種可用的堆疊框架。

依照 Vtable 順序的方法

方法 描述
IDiaEnumStackFrames::Next 擷取列舉序列中指定的堆疊框架元素數目。
IDiaEnumStackFrames::Reset 將列舉序列重設為開頭。

備註

呼叫端注意事項

透過呼叫 IDiaStackWalker::getEnumFramesIDiaStackWalker::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

另請參閱