IDiaEnumSymbols
Enumera los distintos símbolos contenidos en el origen de datos.
Sintaxis
IDiaEnumSymbols : IUnknown
Métodos en orden de Vtable
En la tabla siguiente se muestran los métodos de IDiaEnumSymbols
.
Método | Descripción |
---|---|
IDiaEnumSymbols::get__NewEnum | Recupera la versión IEnumVARIANT Interface de este enumerador. |
IDiaEnumSymbols::get_Count | Recupera el número de símbolos. |
IDiaEnumSymbols::Item | Recupera un símbolo mediante un índice. |
IDiaEnumSymbols::Next | Recupera un número especificado de símbolos en la secuencia de enumeración. |
IDiaEnumSymbols::Skip | Omite un número especificado de símbolos en una secuencia de enumeración. |
IDiaEnumSymbols::Reset | Restablece una secuencia de enumeración al principio. |
IDiaEnumSymbols::Clone | Crea un enumerador que contiene el mismo estado de enumeración que el enumerador actual. |
Comentarios
Esta interfaz proporciona símbolos agrupados por un tipo específico de símbolo, por ejemplo, SymTagUDT
(tipos definidos por el usuario (UDT)) o SymTagBaseClass
. Para trabajar con símbolos agrupados por dirección, use la interfaz IDiaEnumSymbolsByAddr.
Notas para autores de la llamada
Para obtener esta interfaz, llame a los métodos siguientes:
Ejemplo
En este ejemplo se muestra cómo obtener la interfaz IDiaEnumSymbols
y, a continuación, usar esa enumeración para enumerar tipos definidos por el usuario (UDT).
Nota
CDiaBSTR
es una clase que encapsula BSTR
y controla automáticamente la liberación de la cadena cuando la creación de instancias sale del ámbito.
void ShowUDTs(IDiaSymbol *pGlobals)
{
CComPtr<IDiaEnumSymbols> pEnum;
CComPtr<IDiaSymbol> pSymbol;
HRESULT hr;
hr = pGlobals->findChildren(SymTagUDT,
NULL,
nsfCaseInsensitive | nsfUndecoratedName,
&pEnum);
if (hr == S_OK)
{
while ( SUCCEEDED( hr = pEnum->Next( 1, &pSymbol, &celt ) ) &&
celt == 1 )
{
CDiaBSTR name;
if ( pSymbol->get_name( &name ) != S_OK )
Fatal( "get_name" );
printf( "Found UDT: %ws\n", name );
pSymbol = 0;
}
}
}
Requisitos
Encabezado: Dia2.h
Biblioteca: diaguids.lib
DLL: msdia80.dll