IDiaEnumSourceFiles

枚举在数据源中包含的各个源文件。

IDiaEnumSourceFiles : IUknown

方法按 Vtable 顺序

下表显示 IDiaEnumSourceFiles方法。

方法

说明

IDiaEnumSourceFiles::get__NewEnum

检索此枚举器的 IEnumVARIANT Interface 版本。

IDiaEnumSourceFiles::get_Count

检索源文件的数目。

IDiaEnumSourceFiles::Item

通过索引检索源文件。

IDiaEnumSourceFiles::Next

检索源文件指定数目的枚举序列的。

IDiaEnumSourceFiles::Skip

跳过源文件指定数目的枚举序列的。

IDiaEnumSourceFiles::Reset

重置枚举序列与开头。

IDiaEnumSourceFiles::Clone

创建包含枚举状态和枚举当前枚举数相同的枚举数。

备注

调用方的说明

通过调用 IDiaTable 对象的 QueryInterface 方法获取此接口。请参见下面的示例有关详细信息。

示例

此示例演示如何从表列出的 IDiaEnumSourceFiles 接口。 DIA 会话对象的。有关访问源文件信息的示例,请参见 IDiaSourceFile 接口。

 
IDiaEnumSourceFiles* GetEnumSourceFiless(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;
}

要求

标题:Dia2.h

库:diaguids.lib

DLL:msdia80.dll

请参见

参考

IDiaSession::findFile

IDiaSession::findLinesByLinenum

IDiaTable

其他资源

接口(调试接口访问 SDK)