Udostępnij za pośrednictwem


IDiaSession::findChildren

Pobiera wszystkie elementy podrzędne określonego identyfikatora nadrzędnego zgodnego z nazwą i typem symbolu.

Składnia

HRESULT findChildren ( 
   IDiaSymbol*       parent,
   SymTagEnum        symtag,
   LPCOLESTR         name,
   DWORD             compareFlags,
   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 (plik exe).

symtag

[in] Określa tag symbolu elementów podrzędnych do pobrania. Wartości są pobierane z wyliczenia SymTagEnum. 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 NameSearchOptions mogą być używane samodzielnie lub w połączeniu.

ppResult

[out] Zwraca obiekt IDiaEnumSymbols 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źć zmienne lokalne funkcji pFunc , które pasują do nazwy szVarName.

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

Zobacz też