Condividi tramite


IDiaSession::findChildrenExByAddr

Recupera tutti gli elementi figlio di un identificatore padre specificato che corrispondono al nome e al tipo di simbolo, incluse le variabili locali ottimizzate, che contengono o sono più vicini a un indirizzo specificato.

Sintassi

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

Parametri

parent

[in] Oggetto IDiaSymbol che rappresenta l'elemento padre. Se questo simbolo padre è una funzione, un modulo o un blocco, i relativi figli lessicali vengono restituiti in ppResult. Se il simbolo padre è un tipo, vengono restituiti i relativi elementi figlio della classe. Se questo parametro è NULL, deve symtag essere impostato su SymTagExe o SymTagNull, che restituisce l'ambito globale (.exe file).

symtag

[in] Specifica il tag simbolo degli elementi figlio da recuperare. I valori vengono ricavati dall'enumerazione SymTagEnum Enumeration . Impostare su SymTagNull per recuperare tutti gli elementi figlio.

name

[in] Specifica il nome degli elementi figlio da recuperare. Impostare su NULL per tutti gli elementi figlio da recuperare.

compareFlags

[in] Specifica le opzioni di confronto applicate alla corrispondenza dei nomi. I valori dell'enumerazione NameSearchOptions Enumeration possono essere usati da soli o in combinazione.

isect

[in] Specifica il componente della sezione dell'indirizzo.

offset

[in] Specifica il componente offset dell'indirizzo.

ppResult

[out] Restituisce un IDiaEnumSymbols oggetto che contiene l'elenco di simboli figlio recuperati.

Valore restituito

Se ha esito positivo, restituisce S_OK; in caso contrario, restituisce un codice di errore.

Esempio

Nell'esempio seguente viene illustrato come trovare le variabili locali della funzione pFunc che corrispondono al nome szVarName e si trovano all'indirizzo isect:offset.

IDiaEnumSymbols* pEnum;
pSession->findChildrenExByAddr( pFunc, SymTagData, szVarName, nsCaseSensitive, isect, offset, &pEnum );

Vedi anche