IDiaEnumDebugStreamData
Ermöglicht den Zugriff auf Datensätze in einem Debugbuild Stream.
IDiaEnumDebugStreamData : IUnknown
Methoden in die Vtable-Reihenfolge
In der folgenden Tabelle werden die Methoden von IDiaEnumDebugStreamDataan.
Methode |
Beschreibung |
---|---|
Ruft die IEnumVARIANT Interface-Version dieses Enumerators ab. |
|
Ruft die Anzahl der Datensätze Debug Stream ab. |
|
Ruft den Namen des Debuggen von Streams ab. |
|
Ruft den angegebenen Datensatz ab. |
|
Ruft die angegebene Anzahl von Datensätzen aus der aufgelisteten Sequenz ab. |
|
Überspringt eine angegebene Anzahl von Datensätzen in einer aufgelisteten Sequenz. |
|
Setzt die aufgelistete Sequenz auf den Anfang zurück. |
|
Erstellt einen Enumerator, der die aufgelistete gleichen Reihenfolge wie der aktuelle Enumerator enthält. |
Hinweise
Diese Schnittstelle stellt einen Datenstrom von Datensätzen in einem Debugbuild Stream dar.Die Größe und die Interpretation jedes Datensatzes ist vom Stream ab, den der Datensatz von stammt.Diese Schnittstelle ermöglicht den Zugriff auf effiziente Weise Rohdatenen für Symboldateien in Bytes.
Hinweise für Aufrufer
Rufen Sie die IDiaEnumDebugStreams::ItemIDiaEnumDebugStreams::Next oder Methoden zum Abrufen eines IDiaEnumDebugStreamData-Objekt.
Beispiel
Dieses Beispiel zeigt, wie Sie einen einzigen Stream und ihre Datensätze zugreifen.
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);
}
Anforderungen
Header: Dia2.h
Bibliothek: diaguids.lib
DLLs: msdia80.dll