Nota
L'accés a aquesta pàgina requereix autorització. Podeu provar d'iniciar la sessió o de canviar els directoris.
L'accés a aquesta pàgina requereix autorització. Podeu provar de canviar els directoris.
Recupera un enumerador para todas las tablas contenidas en el almacén de símbolos.
Sintaxis
HRESULT getEnumTables (
IDiaEnumTables** ppEnumTables
);
Parámetros
ppEnumTables
[out] Devuelve un objeto IDiaEnumTables. Use esta interfaz para enumerar las tablas del almacén de símbolos.
Valor devuelto
Si la operación se realiza correctamente, devuelve S_OK; de lo contrario, devuelve un código de error.
Ejemplo
En este ejemplo se presenta una función general que usa el método getEnumTables para obtener un objeto enumerador específico. Si se encuentra el enumerador, la función devuelve un puntero que se puede convertir a la interfaz deseada; de lo contrario, la función devuelve NULL.
IUnknown *GetTable(IDiaSession *pSession, REFIID iid)
{
IUnknown *pUnknown = NULL;
if (pSession != NULL)
{
CComPtr<IDiaEnumTables> pEnumTables;
if (pSession->getEnumTables(&pEnumTables) == S_OK)
{
CComPtr<IDiaTable> pTable;
DWORD celt = 0;
while(pEnumTables->Next(1,&pTable,&celt) == S_OK &&
celt == 1)
{
if (pTable->QueryInterface(iid, (void **)pUnknown) == S_OK)
{
break;
}
pTable = NULL;
}
}
}
return(pUnknown);
}