Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Listet die verschiedenen Rahmen datenelemente auf, die in der Datenquelle enthalten sind.
IDiaEnumFrameData : IUnknown
Methoden in die Vtable-Reihenfolge
In der folgenden Tabelle werden die Methoden von IDiaEnumFrameDataan.
Methode |
Beschreibung |
|---|---|
Ruft die IEnumVARIANT Interface-Version dieses Enumerators ab. |
|
Ruft die Anzahl von Rahmen datenelementen ab. |
|
Ruft ein Rahmen datenelement mithilfe eines Indexes ab. |
|
Ruft eine angegebene Anzahl von Rahmen datenelemente in der Enumerationsfolge ab. |
|
Überspringt eine angegebene Anzahl von Rahmen datenelemente in der Enumerationsfolge. |
|
Setzt die Enumerationsfolge auf den Anfang zurück. |
|
Erstellt einen Enumerator, der den gleichen Enumerationszustand wie der aktuelle Enumerator enthält. |
|
Gibt einen Rahmen um relative virtuelle Adresse (RVA). |
|
Gibt einen Rahmen um virtuelle Adresse (VA). |
Hinweise
Hinweise für Aufrufer
Rufen Sie diese Schnittstelle in der IDiaSession::getEnumTables-Methode.Weitere Informationen finden Sie im Beispiel für Details.
Beispiel
Dieses Beispiel zeigt, wie die GetEnumFrameData erhält (Funktion) und ( ShowFrameData die Funktion) IDiaEnumFrameData-Schnittstelle verwendet.Zeigen Sie die IDiaFrameData-Schnittstelle als ein Beispiel für die PrintFrameData-Funktion.
IDiaEnumFrameData* GetEnumFrameData(IDiaSession *pSession)
{
IDiaEnumFrameData* pUnknown = NULL;
REFIID iid = __uuidof(IDiaEnumFrameData);
IDiaEnumTables* pEnumTables = NULL;
IDiaTable* pTable = NULL;
ULONG celt = 0;
if (pSession->getEnumTables(&pEnumTables) != S_OK)
{
wprintf(L"ERROR - GetTable() getEnumTables\n");
return NULL;
}
while (pEnumTables->Next(1, &pTable, &celt) == S_OK && celt == 1)
{
// There is only one table that matches the given iid
HRESULT hr = pTable->QueryInterface(iid, (void**)&pUnknown);
pTable->Release();
if (hr == S_OK)
{
break;
}
}
pEnumTables->Release();
return pUnknown;
}
void ShowFrameData(IDiaSession *pSession)
{
IDiaEnumFrameData* pEnumFrameData = GetEnumFrameData(pSession);;
if (pEnumFrameData != NULL)
{
IDiaFrameData* pFrameData;
ULONG celt = 0;
while(pEnumFrameData->Next(1, &pFrameData, &celt) == S_OK &&
celt == 1)
{
PrintFrameData(pFrameData);
pFrameData->Release();
}
pEnumFrameData->Release();
}
}
Anforderungen
Header: Dia2.h
Bibliothek: diaguids.lib
DLLs: msdia80.dll