IDiaSession::findChildrenExByAddr
Recupera todos los elementos secundarios de un identificador primario especificado que coinciden con el nombre y el tipo de símbolo, incluidas las variables locales optimizadas, que contienen o están más cercanas a una dirección especificada.
Sintaxis
HRESULT findChildrenExByAddr (
IDiaSymbol* parent,
SymTagEnum symtag,
LPCOLESTR name,
DWORD compareFlags,
DWORD isect,
DWORD offset,
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 SymTagEnum
enumeración Enumeración . 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 NameSearchOptions
enumeración Enumeration se pueden usar solos o en combinación.
isect
[in] Especifica el componente de sección de la dirección.
offset
[in] Especifica el componente de desplazamiento de la dirección.
ppResult
[out] Devuelve un IDiaEnumSymbols
objeto que contiene la lista de 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 función pFunc
que coinciden con el nombre szVarName
y están en la dirección isect:offset
.
IDiaEnumSymbols* pEnum;
pSession->findChildrenExByAddr( pFunc, SymTagData, szVarName, nsCaseSensitive, isect, offset, &pEnum );