IDiaSession::findChildren

Recupera todos los elementos secundarios de un identificador primario especificado que coinciden con el nombre y el tipo de símbolo.

Sintaxis

HRESULT findChildren ( 
   IDiaSymbol*       parent,
   SymTagEnum        symtag,
   LPCOLESTR         name,
   DWORD             compareFlags,
   IDiaEnumSymbols** ppResult
);

Parámetros

parent

[in] Objeto IDiaSymbol que representa el símbolo primario. Si este símbolo primario es una función, módulo o bloque, sus elementos secundarios léxicos se devuelven en ppResult. Si el símbolo primario es un tipo, se devuelven sus elementos secundarios de clase. Si este parámetro es NULL, symtag debe establecerse en SymTagExe o SymTagNull, para que devuelva el ámbito global (archivo .exe).

symtag

[in] Especifica la etiqueta del símbolo de los elementos secundarios que se van a recuperar. Los valores se toman de la enumeración SymTagEnum. Establézcalo en SymTagNull para recuperar todos los elementos secundarios.

name

[in] Especifica el nombre de los elementos secundarios que se van a recuperar. Establézcalo en NULL para que se recuperen todos los elementos secundarios.

compareFlags

[in] Especifica las opciones de comparación aplicadas a la coincidencia de nombres. Los valores de la enumeración NameSearchOptions se pueden usar solo o en combinación.

ppResult

[out] Devuelve un objeto IDiaEnumSymbols que contiene la lista de los símbolos secundarios recuperados.

Valor devuelto

Si la operación se realiza correctamente, devuelve S_OK; de lo contrario, devuelve un código de error.

Ejemplo

En el ejemplo siguiente se muestra cómo buscar variables locales de la función pFunc que coincidan con el nombre szVarName.

IDiaEnumSymbols* pEnum;
pSession->findChildren( pFunc, SymTagData, szVarName, nsCaseSensitive, &pEnum );

Vea también