共用方式為


IDiaEnumDebugStreamData

提供偵錯資料流中記錄的存取。

IDiaEnumDebugStreamData : IUnknown

方法 Vtable 順序

下表顯示的方法IDiaEnumDebugStreamData

方法

描述

IDiaEnumDebugStreamData::get__NewEnum

擷取IEnumVARIANT Interface版的這個列舉值。

IDiaEnumDebugStreamData::get_Count

擷取偵錯的資料流中的記錄的數目。

IDiaEnumDebugStreamData::get_name

擷取偵錯資料流的名稱。

IDiaEnumDebugStreamData::Item

擷取指定的記錄。

IDiaEnumDebugStreamData::Next

擷取列舉序列中的指定的個數的記錄。

IDiaEnumDebugStreamData::Skip

略過指定的可列舉序列中的記錄數。

IDiaEnumDebugStreamData::Reset

要開始,重設列舉的序列。

IDiaEnumDebugStreamData::Clone

建立包含相同的列舉的順序,為目前的列舉值的列舉值。

備註

這個介面表示偵錯資料流中的資料錄的資料流。 每個記錄的解譯方式和調整是取決於該記錄來源的資料流。 這個介面會有效地提供未經處理資料中的位元組符號檔的存取。

呼叫者的備忘稿

呼叫IDiaEnumDebugStreams::ItemIDiaEnumDebugStreams::Next方法,以取得IDiaEnumDebugStreamData物件。

範例

這個範例會示範如何存取單一資料流和它的記錄。

void PrintStreamData(IDiaEnumDebugStreamData* pStream)
{
    BSTR  wszName;
    LONG  dwElem;
    ULONG celt    = 0;
    DWORD cbData;
    DWORD cbTotal = 0;
    BYTE  data[1024];

    if(pStream->get_name(&wszName) != S_OK)
    {
        wprintf_s(L"ERROR - PrintStreamData() get_name\n");
    }
    else
    {
        wprintf_s(L"Stream: %s", wszName);
        SysFreeString(wszName);
    }
    if(pStream->get_Count(&dwElem) != S_OK)
    {
        wprintf(L"ERROR - PrintStreamData() get_Count\n");
    }
    else
    {
        wprintf(L"(%d)\n", dwElem);
    }
    while(pStream->Next(1, sizeof(data), &cbData, (BYTE *)&data, &celt) == S_OK)
    {
        DWORD i;
        for (i = 0; i < cbData; i++)
        {
            wprintf(L"%02X ", data[i]);
            if(i && i % 8 == 7 && i+1 < cbData)
            {
                wprintf(L"- ");
            }
        }
        wprintf(L"| ");
        for(i = 0; i < cbData; i++)
        {
            wprintf(L"%c", iswprint(data[i]) ? data[i] : '.');
        }
        wprintf(L"\n");
        cbTotal += cbData;
    }
    wprintf(L"Summary :\n\tSizeof(Elem) = %d\n\tNo of Elems = %d\n\n",
            cbTotal/dwElem, dwElem);
}

需求

標頭: Dia2.h

媒體櫃: diaguids.lib

DLL: msdia80.dll

請參閱

參考

IDiaEnumDebugStreams::Item

IDiaEnumDebugStreams::Next

其他資源

介面 (偵錯介面存取 SDK)