Udostępnij przez


IDiaSymbol

Opisuje właściwości wystąpienia symboli.

Składnia

IDiaSymbol : IUnknown

Metody w kolejności alfabetycznej

W poniższej tabeli przedstawiono metody IDiaSymbol.

Uwaga / Notatka

Symbole będą zwracać istotne dane tylko dla niektórych z tych metod, w zależności od typu symbolu. Jeśli metoda zwraca S_OK, metoda zwróciła istotne dane. Aby uzyskać listę typów symboli, zobacz Hierarchia leksykalna typów symboli.

Metoda Opis
IDiaSymbol::findChildren Pobiera wszystkie elementy podrzędne symbolu.
IDiaSymbol::findChildrenEx Pobiera elementy podrzędne symbolu. Ta metoda jest rozszerzoną wersją interfejsu IDiaSymbol::findChildren.
IDiaSymbol::findChildrenExByAddr Pobiera elementy podrzędne symbolu, które są prawidłowe pod określonym adresem.
IDiaSymbol::findChildrenExByRVA Pobiera elementy podrzędne symbolu, które są prawidłowe pod określonym względnym adresem wirtualnym (RVA).
IDiaSymbol::findChildrenExByVA Pobiera elementy podrzędne symbolu, które są prawidłowe pod określonym adresem wirtualnym.
IDiaSymbol::findInlineeLines Pobiera wyliczenie, które umożliwia klientowi iterowanie za pośrednictwem informacji o numerze wiersza wszystkich funkcji, które są wbudowane, bezpośrednio lub pośrednio, w tym symbolu.
IDiaSymbol::findInlineeLinesByAddr Pobiera wyliczenie, które umożliwia klientowi iterowanie za pośrednictwem informacji o numerze wiersza wszystkich funkcji, które są wbudowane, bezpośrednio lub pośrednio, w tym symbolu w określonym zakresie adresów.
IDiaSymbol::findInlineeLinesByRVA Pobiera wyliczenie, które umożliwia klientowi iterowanie za pośrednictwem informacji o numerze wiersza wszystkich funkcji wbudowanych, bezpośrednio lub pośrednio, w tym symbolu w określonym względnym adresie wirtualnym (RVA).
IDiaSymbol::findInlineeLinesByVA Pobiera wyliczenie, które umożliwia klientowi iterowanie za pośrednictwem informacji o numerze wiersza wszystkich funkcji, które są wbudowane, bezpośrednio lub pośrednio, w tym symbolu w określonym adresie wirtualnym (VA).
IDiaSymbol::findInlineFramesByAddr Pobiera wyliczenie, które umożliwia klientowi iterowanie wszystkich wbudowanych ramek na danym adresie.
IDiaSymbol::findInlineFramesByRVA Pobiera wyliczenie, które umożliwia klientowi iterowanie wszystkich ramek wbudowanych na określonym względnym adresie wirtualnym (RVA).
IDiaSymbol::findInlineFramesByVA Pobiera wyliczenie, które umożliwia klientowi iterowanie wszystkich ramek wbudowanych na określonym adresie wirtualnym.
IDiaSymbol::findInputAssemblyFile Pobiera plik zestawu wejściowego platformy .NET Native, który jest elementem nadrzędnym symbolu.
IDiaSymbol::findSymbolsByRVAForAcceleratorPointerTag Biorąc pod uwagę odpowiadającą wartość tagu, ta metoda zwraca wyliczenie symboli zawartych w tej funkcji wycinka w określonym względnym adresie wirtualnym.
IDiaSymbol::findSymbolsForAcceleratorPointerTag Zwraca liczbę tagów wskaźnika akceleratora w funkcji wycinkowej C++ AMP.
IDiaSymbol::get_acceleratorPointerTags Zwraca wszystkie wartości tagów wskaźnika akceleratora, które odpowiadają funkcji wycinkowej akceleratora C++AMP.
IDiaSymbol::get_access Pobiera modyfikator dostępu składowej klasy.
IDiaSymbol::get_addressOffset Pobiera część przesunięcia lokalizacji adresu.
IDiaSymbol::get_addressSection Pobiera część sekcji lokalizacji adresu.
IDiaSymbol::get_addressTaken Pobiera flagę wskazującą, czy inny symbol odwołuje się do tego adresu.
IDiaSymbol::get_age Pobiera wartość wieku bazy danych programu.
IDiaSymbol::get_arrayIndexType Pobiera identyfikator symbolu typu indeksu tablicy.
IDiaSymbol::get_arrayIndexTypeId Pobiera identyfikator typu indeksu tablicy symbolu.
IDiaSymbol::get_backEndBuild Pobiera numer kompilacji zaplecza.
IDiaSymbol::get_backEndMajor Pobiera numer wersji głównej zaplecza.
IDiaSymbol::get_backEndMinor Pobiera numer wersji pomocniczej zaplecza.
IDiaSymbol::get_backEndQFE Pobiera numer qfe zaplecza.
IDiaSymbol::get_baseDataOffset Pobiera przesunięcie danych podstawowych.
IDiaSymbol::get_baseDataSlot Pobiera podstawowe miejsce danych.
IDiaSymbol::get_baseSymbol Pobiera symbol, z którego jest oparty wskaźnik.
IDiaSymbol::get_baseSymbolId Pobiera identyfikator symbolu, z którego jest oparty wskaźnik.
IDiaSymbol::get_baseType Pobiera tag typu prostego typu.
IDiaSymbol::get_bindID Pobiera indeks rejestru powiązań.
IDiaSymbol::get_bindSlot Pobiera dolną granicę w obszarze powiązania.
IDiaSymbol::get_bindSpace Pobiera przestrzeń powiązania.
IDiaSymbol::get_bitPosition Pobiera pozycję bitową lokalizacji.
IDiaSymbol::get_builtInKind Pobiera wbudowany rodzaj typu HLSL.
IDiaSymbol::get_callingConvention Zwraca wskaźnik konwencji wywoływania metody.
IDiaSymbol::get_characteristics Pobiera charakterystykę tej sekcji COFF.
IDiaSymbol::get_classParent Pobiera odwołanie do elementu nadrzędnego klasy symbolu.
IDiaSymbol::get_classParentId Pobiera identyfikator nadrzędny klasy symbolu.
IDiaSymbol::get_code Pobiera flagę wskazującą, czy symbol odwołuje się do adresu kodu.
IDiaSymbol::get_coffGroup Pobiera symbol grupy COFF, z których pochodzi ten symbol.
IDiaSymbol::get_compilerGenerated Pobiera flagę wskazującą, czy symbol został wygenerowany przez kompilator.
IDiaSymbol::get_compilerName Pobiera nazwę kompilatora użytego do utworzenia narzędzia Compiland.
IDiaSymbol::get_constantExport Pobiera flagę wskazującą, czy ten eksport jest STAŁY.
IDiaSymbol::get_constructor Pobiera flagę wskazującą, czy typ danych zdefiniowany przez użytkownika ma konstruktor.
IDiaSymbol::get_constType Pobiera flagę wskazującą, czy typ danych zdefiniowany przez użytkownika jest stały.
IDiaSymbol::get_container Pobiera symbol zawierający ten symbol.
IDiaSymbol::get_count Pobiera liczbę elementów na liście lub tablicy.
IDiaSymbol::get_countLiveRanges Pobiera liczbę prawidłowych zakresów adresów skojarzonych z symbolem lokalnym.
IDiaSymbol::get_customCallingConvention Pobiera flagę wskazującą, czy funkcja używa niestandardowej konwencji wywoływania.
IDiaSymbol::get_dataBytes Pobiera bajty danych symbolu OEM.
IDiaSymbol::get_dataExport Pobiera flagę wskazującą, czy ten eksport to DANE.
IDiaSymbol::get_dataKind Pobiera klasyfikację zmiennej symbolu danych.
IDiaSymbol::get_editAndContinueEnabled Pobiera flagę opisującą funkcje Edytuj i Kontynuuj skompilowanego programu lub jednostki.
IDiaSymbol::get_exceptionHandlerAddressOffset Pobiera przesunięcie sekcji programu obsługi wyjątków.
IDiaSymbol::get_exceptionHandlerAddressSection Pobiera numer sekcji programu obsługi wyjątków.
IDiaSymbol::get_exceptionHandlerRelativeVirtualAddress Pobiera względny adres wirtualny programu obsługi wyjątków.
IDiaSymbol::get_exceptionHandlerVirtualAddress Pobiera wirtualny adres programu obsługi wyjątków.
IDiaSymbol::get_exportHasExplicitlyAssignedOrdinal Pobiera flagę wskazującą, czy ten eksport ma jawnie przypisaną liczbę porządkową.
IDiaSymbol::get_exportIsForwarder Pobiera flagę wskazującą, czy ten eksport jest usługi przesyłania dalej.
IDiaSymbol::get_farReturn Pobiera flagę wskazującą, czy funkcja używa dalekiego zwrotu.
IDiaSymbol::get_finalLiveStaticSize Pobiera końcowy statyczny rozmiar funkcji na żywo po podkreśleniu.
IDiaSymbol::get_framePointerPresent Pobiera flagę wskazującą, czy ta funkcja ma wskaźnik ramki.
IDiaSymbol::get_frameSize Pobiera rozmiar ramki.
IDiaSymbol::get_frontEndBuild Pobiera numer kompilacji frontonu.
IDiaSymbol::get_frontEndMajor Pobiera numer wersji głównej frontonu.
IDiaSymbol::get_frontEndMinor Pobiera numer wersji pomocniczej frontonu.
IDiaSymbol::get_frontEndQFE Pobiera numer wersji QFE frontonu.
IDiaSymbol::get_function Pobiera flagę wskazującą, czy symbol publiczny odwołuje się do funkcji.
IDiaSymbol::get_guid Pobiera identyfikator GUID symbolu.
IDiaSymbol::get_hasAlloca Pobiera flagę wskazującą, czy funkcja zawiera wywołanie metody alloca.
IDiaSymbol::get_hasAssignmentOperator Pobiera flagę wskazującą, czy typ danych zdefiniowany przez użytkownika ma zdefiniowane operatory przypisania.
IDiaSymbol::get_hasCastOperator Pobiera flagę wskazującą, czy typ danych zdefiniowany przez użytkownika ma zdefiniowane operatory rzutowe.
IDiaSymbol::get_hasControlFlowCheck Pobiera flagę wskazującą, czy ta funkcja zawiera kontrole przepływu sterowania.
IDiaSymbol::get_hasDebugInfo Pobiera flagę wskazującą, czy compiland zawiera informacje debugowania.
IDiaSymbol::get_hasEH Pobiera flagę wskazującą, czy funkcja ma procedurę obsługi wyjątków w stylu C++.
IDiaSymbol::get_hasEHa Pobiera flagę wskazującą, czy funkcja ma asynchroniczną procedurę obsługi wyjątków.
IDiaSymbol::get_hasInlAsm Pobiera flagę wskazującą, czy funkcja ma wbudowany zestaw.
IDiaSymbol::get_hasLongJump Pobiera flagę wskazującą, czy funkcja zawiera polecenie longjmp (część obsługi wyjątków w stylu C).
IDiaSymbol::get_hasManagedCode Pobiera flagę wskazującą, czy moduł zawiera kod zarządzany.
IDiaSymbol::get_hasNestedTypes Pobiera flagę wskazującą, czy typ danych zdefiniowany przez użytkownika ma zagnieżdżone definicje typów.
IDiaSymbol::get_hasSecurityChecks Pobiera flagę wskazującą, czy funkcja lub compiland ma skompilowane testy zabezpieczeń (za pośrednictwem przełącznika kompilatora /GS (sprawdzanie zabezpieczeń buforu).
IDiaSymbol::get_hasSEH Pobiera flagę wskazującą, czy funkcja ma obsługę wyjątków strukturalnych w stylu Win32.
IDiaSymbol::get_hasSetJump Pobiera flagę wskazującą, czy funkcja zawiera polecenie setjmp.
IDiaSymbol::get_hasValidPGOCounts Pobiera flagę wskazującą, czy te symbole mają prawidłowe liczby PGO.
IDiaSymbol::get_hfaDouble Pobiera flagę określającą, czy typ zdefiniowany przez użytkownika (UDT) zawiera homogeniczne dane agregujące zmiennoprzecinkowe (HFA) typu podwójne.
IDiaSymbol::get_hfaFloat Pobiera flagę określającą, czy typ zdefiniowany przez użytkownika (UDT) zawiera homogeniczne dane agregacji zmiennoprzecinkowej (HFA) typu float.
IDiaSymbol::get_indirectVirtualBaseClass Pobiera flagę wskazującą, czy typ danych zdefiniowany przez użytkownika jest pośrednią wirtualną klasą bazową.
IDiaSymbol::get_InlSpec Pobiera flagę wskazującą, czy funkcja została oznaczona za pomocą atrybutu wbudowanego.
IDiaSymbol::get_interruptReturn Pobiera flagę wskazującą, czy funkcja ma zwrot z instrukcji przerwania.
IDiaSymbol::get_intrinsic Pobiera flagę określającą, czy klasa jest typem wewnętrznym.
IDiaSymbol::get_intro Pobiera flagę wskazującą, czy funkcja jest funkcją wirtualną klasy bazowej.
IDiaSymbol::get_isAcceleratorGroupSharedLocal Pobiera flagę wskazującą, czy symbol odpowiada udostępnionej zmiennej lokalnej grupy w kodzie skompilowanym dla akceleratora C++AMP.
IDiaSymbol::get_isAcceleratorPointerTagLiveRange Pobiera flagę wskazującą, czy symbol odpowiada symbolowi zakresu definicji dla składnika tagu zmiennej wskaźnika w kodzie skompilowanym dla akceleratora AMP języka C++. Symbol zakresu definicji to lokalizacja zmiennej dla zakresu adresów.
IDiaSymbol::get_isAcceleratorStubFunction Wskazuje, czy symbol odpowiada symbolowi funkcji najwyższego poziomu dla cieniowania skompilowanego dla akceleratora odpowiadającego parallel_for_each wywołaniu.
IDiaSymbol::get_isAggregated Pobiera flagę wskazującą, czy dane są częścią agregacji wielu symboli.
IDiaSymbol::get_isConstructorVirtualBase Pobiera flagę wskazującą, czy jest to konstruktor wystąpienia klasy z bazą wirtualną.
IDiaSymbol::get_isCTypes Pobiera flagę wskazującą, czy plik symboli zawiera typy C.
IDiaSymbol::get_isCVTCIL Pobiera flagę wskazującą, czy moduł został przekonwertowany z języka Common Intermediate Language (CIL) na kod macierzysty.
IDiaSymbol::get_isCxxReturnUdt Pobiera flagę wskazującą, czy zwracany jest styl UT w stylu C++.
IDiaSymbol::get_isDataAligned Pobiera flagę wskazującą, czy elementy typu danych zdefiniowanego przez użytkownika są wyrównane do określonej granicy.
IDiaSymbol::get_isHLSLData Określa, czy ten symbol reprezentuje dane języka cieniowania wysokiego poziomu (HLSL).
IDiaSymbol::get_isHotpatchable Pobiera flagę wskazującą, czy moduł został skompilowany za pomocą przełącznika kompilatora /hotpatch (Create Hotpatchable Image).
IDiaSymbol::get_isInterfaceUdt Pobiera flagę wskazującą, czy typ jest typem zdefiniowanym przez użytkownika interfejsu WinRT (UDT).
IDiaSymbol::get_isLocationControlFlowDependent Pobiera flagę wskazującą, czy żywość lokalizacji symbolu lokalnego zależy od przepływu sterowania funkcji.
IDiaSymbol::get_isLTCG Pobiera flagę wskazującą, czy zarządzany compiland był połączony z ltCG konsolidatora.
IDiaSymbol::get_isMatrixRowMajor Określa, czy macierz jest główną główną wierszą.
IDiaSymbol::get_isMSILNetmodule Pobiera flagę wskazującą, czy zarządzany compiland jest modułem .netmodule (zawierającym tylko metadane).
IDiaSymbol::get_isMultipleInheritance Określa, czy this wskaźnik wskazuje element członkowski danych z wieloma dziedziczeniami.
IDiaSymbol::get_isNaked Pobiera flagę wskazującą, czy funkcja ma atrybut naked .
IDiaSymbol::get_isOptimizedAway Określa, czy zmienna jest zoptymalizowana.
IDiaSymbol::get_isOptimizedForSpeed Pobiera flagę wskazującą, czy funkcja jest zoptymalizowana pod kątem szybkości.
IDiaSymbol::get_isPGO Pobiera flagę wskazującą, czy włączono funkcję PGO.
IDiaSymbol::get_isPointerBasedOnSymbolValue Określa, czy this wskaźnik jest oparty na wartości symbolu.
IDiaSymbol::get_isPointerToDataMember Określa, czy ten symbol jest wskaźnikiem do elementu członkowskiego danych.
IDiaSymbol::get_isPointerToMemberFunction Określa, czy ten symbol jest wskaźnikiem do funkcji składowej.
IDiaSymbol::get_isRefUdt Pobiera flagę wskazującą, czy jest to typ zdefiniowany przez użytkownika (UDT) odwołania winRT.
IDiaSymbol::get_isReturnValue Określa, czy zmienna zawiera wartość zwracaną.
IDiaSymbol::get_isSafeBuffers Pobiera flagę określającą, czy jest używana dyrektywa preprocesora dla bezpiecznego buforu.
IDiaSymbol::get_isSdl Określa, czy moduł jest kompilowany z opcją /SDL.
IDiaSymbol::get_isSingleInheritance Określa, czy this wskaźnik wskazuje element członkowski danych z pojedynczym dziedziczeniem.
IDiaSymbol::get_isSplitted Pobiera flagę wskazującą, czy dane zostały podzielone na agregację oddzielnych symboli.
IDiaSymbol::get_isStatic Pobiera flagę wskazującą, czy warstwa funkcji lub thunk jest statyczna.
IDiaSymbol::get_isStripped Pobiera flagę wskazującą, czy prywatne symbole zostały usunięte z pliku symboli.
IDiaSymbol::get_isValueUdt Pobiera flagę wskazującą, czy jest to typ zdefiniowany przez użytkownika (UDT) wartości WinRT.
IDiaSymbol::get_isVirtualInheritance Określa, czy this wskaźnik wskazuje element członkowski danych z dziedziczeniem wirtualnym.
IDiaSymbol::get_isWinRTPointer Pobiera flagę wskazującą, czy jest to typ wskaźnika WinRT.
IDiaSymbol::get_language Pobiera język źródła.
IDiaSymbol::get_length Pobiera liczbę bajtów pamięci używanych przez obiekt reprezentowany przez ten symbol.
IDiaSymbol::get_lexicalParent Pobiera odwołanie do elementu nadrzędnego leksykalnego symbolu.
IDiaSymbol::get_lexicalParentId Pobiera identyfikator nadrzędny symbolu leksykalnego.
IDiaSymbol::get_libraryName Pobiera nazwę pliku biblioteki lub pliku obiektu, z którego został załadowany obiekt.
IDiaSymbol::get_liveRangeLength Zwraca długość zakresu adresów, w którym symbol lokalny jest prawidłowy.
IDiaSymbol::get_liveRangeStartAddressOffset Zwraca część przesunięcia zakresu adresów początkowych, w którym symbol lokalny jest prawidłowy.
IDiaSymbol::get_liveRangeStartAddressSection Zwraca część sekcji początkowego zakresu adresów, w którym symbol lokalny jest prawidłowy.
IDiaSymbol::get_liveRangeStartRelativeVirtualAddress Zwraca początek zakresu adresów, w którym symbol lokalny jest prawidłowy.
IDiaSymbol::get_localBasePointerRegisterId Pobiera projektanta rejestru zawierającego wskaźnik podstawowy do ustawień lokalnych.
IDiaSymbol::get_locationType Pobiera typ lokalizacji symbolu danych.
IDiaSymbol::get_lowerBound Pobiera dolną granicę wymiaru tablicy FORTRAN.
IDiaSymbol::get_lowerBoundId Pobiera identyfikator symbolu dolnej granicy wymiaru tablicy FORTRAN.
IDiaSymbol::get_machineType Pobiera typ docelowego procesora CPU.
IDiaSymbol::get_managed Pobiera flagę wskazującą, czy symbol odwołuje się do kodu zarządzanego.
IDiaSymbol::get_memorySpaceKind Pobiera rodzaj miejsca na pamięć.
IDiaSymbol::get_modifierValues Pobiera zestaw modyfikatorów dla tego symbolu.
IDiaSymbol::get_msil Pobiera flagę wskazującą, czy symbol odwołuje się do kodu języka Microsoft Intermediate Language (MSIL).
IDiaSymbol::get_name Pobiera nazwę symbolu.
IDiaSymbol::get_nested Pobiera flagę wskazującą, czy typ danych zdefiniowany przez użytkownika jest zagnieżdżony.
IDiaSymbol::get_noInline Pobiera flagę wskazującą, czy funkcja jest oznaczona atrybutem noinline .
IDiaSymbol::get_noNameExport Pobiera flagę wskazującą, czy ten eksport to NONAME.
IDiaSymbol::get_noReturn Pobiera flagę wskazującą, czy funkcja została zadeklarowana za pomocą atrybutu noreturn .
IDiaSymbol::get_noStackOrdering Pobiera flagę wskazującą, czy nie można wykonać porządkowania stosu w ramach sprawdzania buforu stosu.
IDiaSymbol::get_notReached Pobiera flagę wskazującą, czy funkcja lub etykieta nigdy nie zostanie osiągnięta.
IDiaSymbol::get_numberOfAcceleratorPointerTags Zwraca liczbę tagów wskaźnika akceleratora w funkcji wycinkowej C++ AMP.
IDiaSymbol::get_numberOfColumns Pobiera liczbę kolumn w macierzy.
IDiaSymbol::get_numberOfModifiers Pobiera liczbę modyfikatorów zastosowanych do oryginalnego typu.
IDiaSymbol::get_numberOfRegisterIndices Pobiera liczbę indeksów rejestru.
IDiaSymbol::get_numberOfRows Pobiera liczbę wierszy w macierzy.
IDiaSymbol::get_numericProperties Pobiera zestaw właściwości liczbowych dla tego symbolu.
IDiaSymbol::get_objectFileName Pobiera nazwę pliku obiektu.
IDiaSymbol::get_objectPointerType Pobiera typ wskaźnika obiektu dla metody klasy.
IDiaSymbol::get_oemId Pobiera wartość symbolu oemId .
IDiaSymbol::get_oemSymbolId Pobiera wartość symbolu oemSymbolId .
IDiaSymbol::get_offset Pobiera przesunięcie lokalizacji symbolu.
IDiaSymbol::get_offsetInUdt Pobiera przesunięcie pola tego symbolu w obrębie zewnętrznego typu zdefiniowanego przez użytkownika (UDT).
IDiaSymbol::get_optimizedCodeDebugInfo Pobiera flagę wskazującą, czy funkcja lub etykieta zawiera zoptymalizowany kod, a także informacje o debugowaniu.
IDiaSymbol::get_ordinal Pobiera porządkowe tego eksportu.
IDiaSymbol::get_overloadedOperator Pobiera flagę wskazującą, czy typ danych zdefiniowany przez użytkownika ma przeciążone operatory.
IDiaSymbol::get_packed Pobiera flagę wskazującą, czy typ danych zdefiniowany przez użytkownika jest pakowany.
IDiaSymbol::get_paramBasePointerRegisterId Pobiera projektanta rejestru zawierającego wskaźnik podstawowy do parametrów.
IDiaSymbol::get_PGODynamicInstructionCount Pobiera liczbę instrukcji dynamicznych obliczaną przez trenowanie.
IDiaSymbol::get_PGOEdgeCount Pobiera liczbę krawędzi między obiektem wywołującym/wywoływanym i elementem nadrzędnym.
IDiaSymbol::get_PGOEntryCount Pobiera łączną liczbę wywołań w trenowaniu PGO.
IDiaSymbol::get_phaseName Pobiera fazę, która jest elementem członkowskim kompilacji wielofazowych PGO.
IDiaSymbol::get_platform Pobiera typ platformy, dla którego został skompilowany program lub compiland.
IDiaSymbol::get_privateExport Pobiera flagę wskazującą, czy ten eksport to PRIVATE.
IDiaSymbol::get_pure Pobiera flagę wskazującą, czy funkcja jest czysta wirtualna.
IDiaSymbol::get_rank Pobiera rangę tablicy wielowymiarowej FORTRAN.
IDiaSymbol::get_reference Pobiera flagę wskazującą, czy typ wskaźnika jest odwołaniem.
IDiaSymbol::get_registerId Pobiera projektanta rejestru lokalizacji.
IDiaSymbol::get_registerType Pobiera typ rejestru.
IDiaSymbol::get_relativeVirtualAddress Pobiera względny adres wirtualny (RVA) lokalizacji.
IDiaSymbol::get_restrictedType Określa, czy this wskaźnik jest oflagowany jako ograniczony.
IDiaSymbol::get_RValueReference Pobiera flagę określającą, czy typem wskaźnika jest odwołanie rvalue.
IDiaSymbol::get_samplerSlot Pobiera miejsce próbkatora.
IDiaSymbol::get_scoped Pobiera flagę wskazującą, czy typ danych zdefiniowany przez użytkownika jest wyświetlany w nieglobalnym zakresie leksykalnym.
IDiaSymbol::get_sealed Pobiera flagę określającą, czy klasa lub metoda jest zapieczętowana.
IDiaSymbol::get_signature Pobiera wartość podpisu symbolu.
IDiaSymbol::get_sizeInUdt Pobiera rozmiar elementu członkowskiego typu zdefiniowanego przez użytkownika.
IDiaSymbol::get_slot Pobiera numer miejsca lokalizacji.
IDiaSymbol::get_sourceFileName Pobiera nazwę pliku źródłowego.
IDiaSymbol::get_staticSize Pobiera liczbę instrukcji statycznych.
IDiaSymbol::get_strictGSCheck Pobiera flagę wskazującą, czy ta funkcja została skompilowana z włączoną funkcją strict_gs_check pragma .
IDiaSymbol::get_stride Pobiera krok macierzy lub tablicy strided.
IDiaSymbol::get_subType Pobiera podtyp.
IDiaSymbol::get_subTypeId Pobiera identyfikator podtypu.
IDiaSymbol::get_symbolsFileName Pobiera nazwę pliku, z którego załadowano symbole.
IDiaSymbol::get_symIndexId Pobiera unikatowy identyfikator symbolu.
IDiaSymbol::get_symTag Pobiera klasyfikator typu symboli.
IDiaSymbol::get_targetOffset Pobiera sekcję przesunięcia elementu docelowego thunk.
IDiaSymbol::get_targetRelativeVirtualAddress Pobiera względny adres wirtualny (RVA) obiektu docelowego thunk.
IDiaSymbol::get_targetSection Pobiera sekcję adresu obiektu docelowego thunk.
IDiaSymbol::get_targetVirtualAddress Pobiera adres wirtualny (VA) obiektu docelowego thunk.
IDiaSymbol::get_textureSlot Pobiera gniazdo tekstury.
IDiaSymbol::get_thisAdjust Pobiera logiczną this korektor dla metody .
IDiaSymbol::get_thunkOrdinal Pobiera typ thunk funkcji.
IDiaSymbol::get_timeStamp Pobiera znacznik czasu bazowego pliku wykonywalnego.
IDiaSymbol::get_token Pobiera token metadanych funkcji zarządzanej lub zmiennej.
IDiaSymbol::get_type Pobiera odwołanie do podpisu funkcji.
IDiaSymbol::get_typeId Pobiera identyfikator typu symbolu.
IDiaSymbol::get_typeIds Pobiera tablicę wartości identyfikatorów typów specyficznych dla kompilatora dla tego symbolu.
IDiaSymbol::get_types Pobiera tablicę wartości typów specyficznych dla kompilatora dla tego symbolu.
IDiaSymbol::get_uavSlot Pobiera miejsce uav.
IDiaSymbol::get_udtKind Pobiera różne typy zdefiniowane przez użytkownika (UDT).
IDiaSymbol::get_unalignedType Pobiera flagę wskazującą, czy typ danych zdefiniowany przez użytkownika jest nieprzygotowany.
IDiaSymbol::get_undecoratedName Pobiera nieukodowaną nazwę dla nazwy ozdobionej lub łączącej języka C++.
IDiaSymbol::get_undecoratedNameEx get_undecoratedName Rozszerzenie metody, która pobiera nieukodowaną nazwę na podstawie wartości pola rozszerzenia.
IDiaSymbol::get_unmodifiedType Pobiera oryginalny (niezmodyfikowany) typ tego symbolu.
IDiaSymbol::get_unmodifiedTypeId Pobiera identyfikator oryginalnego (niezmodyfikowanego) typu.
IDiaSymbol::get_unused Przestarzała funkcja.
IDiaSymbol::get_upperBound Pobiera górną granicę wymiaru tablicy FORTRAN.
IDiaSymbol::get_upperBoundId Pobiera identyfikator symbolu górnej granicy wymiaru tablicy FORTRAN.
IDiaSymbol::get_value Pobiera wartość stałej.
IDiaSymbol::get_virtual Pobiera flagę wskazującą, czy funkcja jest wirtualna.
IDiaSymbol::get_virtualAddress Pobiera adres wirtualny (VA) lokalizacji.
IDiaSymbol::get_virtualBaseClass Pobiera flagę wskazującą, czy typ danych zdefiniowany przez użytkownika jest wirtualną klasą bazową.
IDiaSymbol::get_virtualBaseDispIndex Pobiera indeks do tabeli przemieszczania bazy wirtualnej.
IDiaSymbol::get_virtualBaseOffset Pobiera przesunięcie w tabeli funkcji wirtualnej funkcji wirtualnej.
IDiaSymbol::get_virtualBasePointerOffset Pobiera przesunięcie wirtualnego wskaźnika podstawowego.
IDiaSymbol::get_virtualBaseTableType Pobiera typ wirtualnego wskaźnika tabeli bazowej.
IDiaSymbol::get_virtualTableShape Pobiera interfejs symboli typu tabeli wirtualnej dla typu zdefiniowanego przez użytkownika.
IDiaSymbol::get_virtualTableShapeId Pobiera identyfikator kształtu tabeli wirtualnej symbolu.
IDiaSymbol::get_volatileType Pobiera flagę wskazującą, czy typ danych zdefiniowany przez użytkownika jest niestabilny.
IDiaSymbol::get_wasInlined Pobiera flagę wskazującą, czy ten symbol funkcji został wstawiony do innej funkcji.
IDiaSymbol::getSrcLineOnTypeDefn Pobiera plik źródłowy i numer wiersza wskazujący, gdzie zdefiniowano określony typ użytkownika.

Uwagi

Uwagi dla osób wywołujących

Uzyskaj ten interfejs, wywołując jedną z następujących metod:

Przykład

W tym przykładzie pokazano, jak wyświetlić zmienne lokalne dla funkcji na danym względnym adresie wirtualnym. Pokazuje również, jak symbole różnych typów są ze sobą powiązane.

Uwaga / Notatka

CDiaBSTR jest klasą, która opakowuje BSTR element i automatycznie obsługuje zwalnianie ciągu, gdy wystąpienie wykracza poza zakres.

void DumpLocalVars( DWORD rva, IDiaSession *pSession )
{
    CComPtr< IDiaSymbol > pBlock;
    if ( FAILED( psession->findSymbolByRVA( rva, SymTagBlock, &pBlock ) ) )
    {
        Fatal( "Failed to find symbols by RVA" );
    }
    CComPtr< IDiaSymbol > pscope;
    for ( ; pBlock != NULL; )
    {
        CComPtr< IDiaEnumSymbols > pEnum;
        // local data search
        if ( FAILED( pBlock->findChildren( SymTagNull, NULL, nsNone, &pEnum ) ) )
        {
            Fatal( "Local scope findChildren failed" );
        }
        CComPtr< IDiaSymbol > pSymbol;
        DWORD tag;
        DWORD celt;
        while ( pEnum != NULL &&
                SUCCEEDED( pEnum->Next( 1, &pSymbol, &celt ) ) &&
                celt == 1)
        {
            pSymbol->get_symTag( &tag );
            if ( tag == SymTagData )
            {
                CDiaBSTR name;
                DWORD    kind;
                pSymbol->get_name( &name );
                pSymbol->get_dataKind( &kind );
                if ( name != NULL )
                    wprintf_s( L"\t%s (%s)\n", name, szDataKinds[ kind ] );
            }
            else if ( tag == SymTagAnnotation )
            {
                CComPtr< IDiaEnumSymbols > pValues;
                // local data search
                wprintf_s( L"\tAnnotation:\n" );
                if ( FAILED( pSymbol->findChildren( SymTagNull, NULL, nsNone, &pValues ) ) )
                    Fatal( "Annotation findChildren failed" );
                pSymbol = NULL;
                while ( pValues != NULL &&
                        SUCCEEDED( pValues->Next( 1, &pSymbol, &celt ) ) &&
                        celt == 1 )
                {
                    CComVariant value;
                    if ( pSymbol->get_value( &value ) != S_OK )
                        Fatal( "No value for annotation data." );
                    wprintf_s( L"\t\t%ws\n", value.bstrVal );
                    pSymbol = NULL;
                }
            }
            pSymbol = NULL;
        }
        pBlock->get_symTag( &tag );
        if ( tag == SymTagFunction )    // stop when at function scope
            break;
        // move to lexical parent
        CComPtr< IDiaSymbol > pParent;
        if ( SUCCEEDED( pBlock->get_lexicalParent( &pParent ) )
            && pParent != NULL ) {
            pBlock = pParent;
        }
        else
        {
            Fatal( "Finding lexical parent failed." );
        }
    };
}

Wymagania

Header: Dia2.h

Biblioteka: diaguids.lib

BIBLIOTEKA DLL: msdia140.dll

Zobacz także