Udostępnij za pośrednictwem


IDiaSession::findChildrenExByVA

Pobiera wszystkie elementy podrzędne określonego identyfikatora nadrzędnego, które są zgodne z nazwą i typem symboli, w tym zoptymalizowanymi ustawieniami lokalnymi, które zawierają określony adres wirtualny (VA, virtual address).

Składnia

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

Parametry

parent

[in] Obiekt IDiaSymbol reprezentujący obiekt nadrzędny. Jeśli ten symbol nadrzędny jest funkcją, modułem lub blokiem, jego elementy podrzędne leksykalne są zwracane w elemecie ppResult. Jeśli symbol nadrzędny jest typem, zwracane są jego elementy podrzędne klasy. Jeśli ten parametr ma NULLwartość , symtag należy ustawić SymTagExe wartość lub SymTagNull, która zwraca zakres globalny (.exe pliku).

symtag

[in] Określa tag symbolu elementów podrzędnych do pobrania. Wartości są pobierane z SymTagEnum wyliczenia Enumeration . Ustaw wartość na , aby SymTagNull pobrać wszystkie elementy podrzędne.

name

[in] Określa nazwę elementów podrzędnych do pobrania. Ustaw wartość na NULL dla wszystkich elementów podrzędnych, które mają zostać pobrane.

compareFlags

[in] Określa opcje porównania zastosowane do dopasowania nazw. Wartości z wyliczenia Wyliczenia mogą być używane samodzielnie lub w połączeniu.NameSearchOptions

va

[in] Określa adres wirtualny.

ppResult

[out] IDiaEnumSymbols Zwraca obiekt zawierający listę pobranych symboli podrzędnych.

Wartość zwracana

Jeśli operacja powiedzie się, zwraca wartość S_OK; w przeciwnym razie zwraca kod błędu.

Przykład

W poniższym przykładzie pokazano, jak znaleźć lokalne zmienne funkcji pFunc , które pasują do nazwy szVarName pod adresem vawirtualnym .

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

Zobacz też