IDiaSession::findChildrenExByVA
Récupère tous les enfants d’un identificateur parent spécifié qui correspondent au nom et au type de symbole, y compris les locaux optimisés, qui contiennent ou sont les plus proches d’une adresse virtuelle spécifiée (VA).
Syntaxe
HRESULT findChildrenExByVA (
IDiaSymbol* parent,
SymTagEnum symtag,
LPCOLESTR name,
DWORD compareFlags,
ULONGLONG va,
IDiaEnumSymbols** ppResult
);
Paramètres
parent
[in] Objet IDiaSymbol représentant le parent. Si ce symbole parent est une fonction, un module ou un bloc, ses enfants lexicaux sont retournés dans ppResult
. Si le symbole parent est un type, ses enfants de classe sont retournés. Si ce paramètre est NULL
, symtag
doit être défini sur SymTagExe
ou SymTagNull
, qui retourne l’étendue globale (fichier.exe).
symtag
[in] Spécifie la balise de symbole des enfants à récupérer. Les valeurs sont extraites de l’énumération SymTagEnum
Énumération . Définissez sur SymTagNull
pour récupérer tous les enfants.
name
[in] Spécifie le nom des enfants à récupérer. Définissez sur NULL
pour tous les éléments enfants à récupérer.
compareFlags
[in] Spécifie les options de comparaison appliquées à la correspondance de noms. Les valeurs de l’énumération NameSearchOptions
Énumération peuvent être utilisées seules ou combinées.
va
[entrée] Spécifie l’adresse virtuelle.
ppResult
[out] Retourne un IDiaEnumSymbols
objet qui contient la liste des symboles enfants récupérés.
Valeur de retour
En cas de réussite, retourne S_OK
, sinon, retourne un code d'erreur.
Exemple
L’exemple suivant montre comment rechercher des variables locales de fonction pFunc
qui correspondent au nom szVarName
à l’adresse va
virtuelle.
IDiaEnumSymbols* pEnum;
pSession->findChildrenExByVA( pFunc, SymTagData, szVarName, nsCaseSensitive, va, &pEnum );