Freigeben über


IDiaEnumSourceFiles

Listet die verschiedenen Quelldateien auf, die in der Datenquelle enthalten sind.

Syntax

IDiaEnumSourceFiles : IUnknown

Methoden in Vtable-Reihenfolge

In der folgenden Tabelle sind die Methoden von IDiaEnumSourceFiles aufgeführt.

Methode BESCHREIBUNG
IDiaEnumSourceFiles::get__NewEnum Ruft die IEnumVARIANT Interface-Version dieses Enumerators ab.
IDiaEnumSourceFiles::get_Count Ruft die Anzahl der Quelldateien ab.
IDiaEnumSourceFiles::Item Ruft eine Quelldatei mithilfe eines Indexes ab.
IDiaEnumSourceFiles::Next Ruft eine angegebene Anzahl von Quelldateien in der Enumerationssequenz ab.
IDiaEnumSourceFiles::Skip Überspringt eine angegebene Anzahl von Quelldateien in einer Enumerationssequenz.
IDiaEnumSourceFiles::Reset Setzt eine Enumerationsfolge auf den Anfang zurück.
IDiaEnumSourceFiles::Clone Erstellt einen Enumerator mit demselben Enumerationszustand wie der aktuelle Enumerator.

Bemerkungen

Hinweise für Aufrufer

Rufen Sie diese Schnittstelle ab, indem Sie die Methode QueryInterface für ein anderes IDiaTable-Objekt aufrufen. Detail finden Sie in dem Beispiel.

Beispiel

In diesem Beispiel wird gezeigt, wie Die IDiaEnumSourceFiles Schnittstelle aus der Liste der Tabellen in einem Debug Interface Access (DIA)-Sitzungsobjekt abgerufen wird. Ein Beispiel für den Zugriff auf Quelldateiinformationen finden Sie im Artikel zur Schnittstelle IDiaSourceFile.


IDiaEnumSourceFiles* GetEnumSourceFiles(IDiaSession *pSession)
{
    IDiaEnumSourceFiles * pUnknown    = NULL;
    REFIID                iid         = __uuidof(IDiaEnumSourceFiles);
    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;
}

Anforderungen

Header: Dia2.h

Bibliothek: diaguids.lib

DLL: msdia80.dll

Weitere Informationen