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