Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Énumérez les fichiers d’assembly d’entrée répertoriés dans la source de données.
Syntaxe
IDiaEnumInputAssemblyFiles : IUnknown
Méthodes dans l'ordre Vtable
Le tableau suivant présente les méthodes de IDiaEnumInputAssemblyFiles.
| Méthode | Description |
|---|---|
| IDiaEnumInputAssemblyFiles ::get__NewEnum | Récupère la version de l’interface IEnumVARIANT de cet énumérateur. |
| IDiaEnumInputAssemblyFiles ::get_Count | Récupère le nombre de fichiers d’assembly d’entrée. |
| IDiaEnumInputAssemblyFiles ::Item | Récupère un fichier d’assembly d’entrée au moyen d’un index. |
| IDiaEnumInputAssemblyFiles ::Next | Récupère un nombre spécifié de fichiers d’assembly d’entrée dans la séquence d’énumération. |
| IDiaEnumInputAssemblyFiles ::Skip | Ignore un nombre spécifié de fichiers d’assembly d’entrée dans une séquence d’énumération. |
| IDiaEnumInputAssemblyFiles ::Reset | Réinitialise une séquence d'énumération. |
| IDiaEnumInputAssemblyFiles ::Clone | Crée un autre énumérateur qui contient le même état d’énumération que l’actuel. |
Remarques
Remarques pour les appelants
Cette interface est obtenue en appelant la méthode IDiaSession ::findInputAssemblyFiles avec le nom d’un fichier source spécifique ou en appelant la méthode IDiaSession ::getEnumTables avec l’identificateur global unique (GUID) de l’interface IDiaEnumInputAssemblyFiles .
Exemple
Cet exemple montre comment obtenir (la fonction GetEnumInputAssemblyFiles) et utiliser (la fonction DumpAllInputAssemblyFiles) l’interface IDiaEnumInputAssemblyFiles. Consultez l’interface IDiaPropertyStorage pour obtenir une implémentation de la PrintPropertyStorage fonction. Pour obtenir une autre sortie, consultez l’interface IDiaInputAssemblyFile .
IDiaEnumInputAssemblyFiles* GetEnumInputAssemblyInputFiles(IDiaSession *pSession)
{
IDiaEnumInputAssemblyFiles* pUnknown = NULL;
REFIID iid = __uuidof(IDiaEnumInputAssemblyFiles);
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 DumpAllInputAssemblyFiles( IDiaSession* pSession)
{
IDiaEnumInputAssemblyFiles* pEnumInpAsmFiles;
pEnumInpAsmFiles = GetEnumInputAssemblyInputFiles(pSession);
if (pEnumInpAsmFiles != NULL)
{
IDiaInputAssemblyFile* pInpAsmFile;
ULONG celt = 0;
while(pEnumInpAsmFiles->Next(1, &pInpAsmFile, &celt) == S_OK &&
celt == 1)
{
IDiaPropertyStorage *pPropertyStorage;
if (pInpAsmFile->QueryInterface(__uuidof(IDiaPropertyStorage),
(void **)&pPropertyStorage) == S_OK)
{
PrintPropertyStorage(pPropertyStorage);
pPropertyStorage->Release();
}
pInpAsmFile->Release();
}
pEnumInpAsmFiles->Release();
}
}
Spécifications
En-tête : Dia2.h
Bibliothèque : diaguids.lib
DLL : msdia140.dll