IDiaEnumStackFrames
Wylicza różne dostępne ramki stosu.
Metody w tabeli Vtable Order
Metoda | opis |
---|---|
IDiaEnumStackFrames::Next | Pobiera określoną liczbę elementów ramki stosu z sekwencji wyliczenia. |
IDiaEnumStackFrames::Reset | Resetuje sekwencję wyliczenia na początku. |
Uwagi
Uwagi dotyczące wywoływania
Uzyskaj ten interfejs, wywołując metody IDiaStackWalker::getEnumFrames lub IDiaStackWalker::getEnumFrames2 .
Przykład
W tym przykładzie pokazano, jak uzyskać interfejs i korzystać z niego IDiaEnumStackFrames
. Zobacz interfejs IDiaStackFrame, aby zapoznać się z PrintStackFrame
implementacją funkcji.
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;
}
}
}
Wymagania
Nagłówek: Dia2.h
Biblioteka: diaguids.lib
BIBLIOTEKA DLL: msdia80.dll