Partager via


IDiaEnumStackFrames

énumère les différents frames de pile disponibles.

méthodes en commande de Vtable

Méthode

Description

IDiaEnumStackFrames::Next

Récupère un nombre spécifié d'éléments du frame de pile de la séquence d'énumération.

IDiaEnumStackFrames::Reset

réinitialise une séquence d'énumération au début.

Notes

Remarques pour les appelants

obtenez cette interface en appelant les méthodes d' IDiaStackWalker::getEnumFrames ou d' IDiaStackWalker::getEnumFrames2 .

Exemple

cet exemple montre comment obtenir et utiliser l'interface d' IDiaEnumStackFrames . Consultez l'interface d' IDiaStackFrame pour une implémentation d' PrintStackFrame s'exécuter.

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;
        }
    }
}

Configuration requise

en-tête : Dia2.h

bibliothèque : diaguids.lib

DLL : msdia80.dll

Voir aussi

Référence

IDiaStackWalkFrame

IDiaStackWalker::getEnumFrames2

IDiaStackWalker::getEnumFrames

Autres ressources

Interfaces (Kit de développement logiciel de Debug Interface Access)