Udostępnij za pośrednictwem


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

Symbole będą zwracać istotne dane tylko dla niektórych z tych metod, w zależności od typu symbolu. Jeśli metoda zwróci metodę , metoda zwróciła S_OKistotne dane.

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 modifers 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 (niemodyfikowany) 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 dotyczące wywoływania

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

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 też