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