IDiaEnumDebugStreams

Перечисляет различные потоки отладки, содержащиеся в источнике данных.

Синтаксис

IDiaEnumDebugStreams : IUnknown

Методы в порядке таблицы Vtable

В следующей таблице показаны методы IDiaEnumDebugStreams.

Метод Description
IDiaEnumDebugStreams::get__NewEnum Извлекает IEnumVARIANT версию этого перечислителя.
IDiaEnumDebugStreams::get_Count Извлекает количество потоков отладки.
IDiaEnumDebugStreams::Item Извлекает поток отладки с помощью индекса.
IDiaEnumDebugStreams::Next Извлекает указанное количество потоков отладки в последовательности перечисления.
IDiaEnumDebugStreams::Skip Пропускает указанное количество потоков отладки в последовательности перечисления.
IDiaEnumDebugStreams::Reset Сбрасывает последовательность перечисления в начало.
IDiaEnumDebugStreams::Clone Создает перечислитель, содержащий то же состояние перечисления, что и текущий перечислитель.

Замечания

Содержимое потоков отладки зависит от реализации, а форматы данных не являются незадокументированы.

Заметки для вызывающих абонентов

Вызовите метод IDiaSession::getEnumDebug Потоки для получения IDiaEnumDebugStreams объекта.

Пример

В этом примере показано, как получить доступ к потокам данных, доступным из этого интерфейса. См. интерфейс IDiaEnumDebugStreamData для реализации PrintStreamData функции.

void DumpAllDebugStreams( IDiaSession* pSession)
{
    IDiaEnumDebugStreams* pEnumStreams;

    wprintf(L"\n\n*** DEBUG STREAMS\n\n");
    // Retrieve an enumerated sequence of debug data streams
    if(pSession->getEnumDebugStreams(&pEnumStreams) == S_OK)
    {
        IDiaEnumDebugStreamData* pStream;
        ULONG celt = 0;

        for(; pEnumStreams->Next(1, &pStream, &celt) == S_OK; pStream = NULL)
        {
            PrintStreamData(pStream);
            pStream->Release();
        }
        pEnumStreams->Release();
    }
    else
    {
        wprintf(L"Failed to get any debug streams!\n");
    }
    wprintf(L"\n");
}

Requirements

Заголовок: Dia2.h

Библиотека: diaguids.lib

DLL: msdia80.dll

См. также