Partager via


IDiaSymbol

Décrit les propriétés d’une instance de symbole.

Syntaxe

IDiaSymbol : IUnknown

Méthodes par ordre alphabétique

Le tableau suivant présente les méthodes de IDiaSymbol.

Notes

Les symboles retournent des données significatives uniquement pour certaines de ces méthodes, en fonction du type de symbole. Si une méthode retourne S_OK, cette méthode a renvoyé des données significatives.

Méthode Description
IDiaSymbol::findChildren Récupère tous les enfants du symbole.
IDiaSymbol::findChildrenEx Récupère les enfants du symbole. Cette méthode est la version étendue de IDiaSymbol::findChildren.
IDiaSymbol::findChildrenExByAddr Récupère les enfants du symbole qui sont valides à une adresse spécifiée.
IDiaSymbol::findChildrenExByRVA Récupère les enfants du symbole qui sont valides à une adresse virtuelle relative (RVA) spécifiée.
IDiaSymbol::findChildrenExByVA Récupère les enfants du symbole qui sont valides à une adresse virtuelle spécifiée.
IDiaSymbol::findInlineeLines Récupère une énumération qui permet à un client d’itérer dans les informations de numéro de ligne de toutes les fonctions insérées, directement ou indirectement, par ce symbole.
IDiaSymbol::findInlineeLinesByAddr Récupère une énumération qui permet à un client d’itérer dans les informations de numéro de ligne de toutes les fonctions inclues, directement ou indirectement, dans ce symbole dans la plage d’adresses spécifiée.
IDiaSymbol::findInlineeLinesByRVA Récupère une énumération qui permet à un client de faire une itération dans les informations de numéro de ligne de toutes les fonctions inline, directement ou indirectement, dans ce symbole au sein de l’adresse virtuelle relative (RVA) spécifiée.
IDiaSymbol::findInlineeLinesByVA Récupère une énumération qui permet à un client d’itérer dans les informations de numéro de ligne de toutes les fonctions insérées, directement ou indirectement, dans ce symbole dans l’adresse virtuelle spécifiée.
IDiaSymbol::findInlineFramesByAddr Récupère une énumération qui permet à un client d’itérer au sein de tous les frames inline sur une adresse donnée.
IDiaSymbol::findInlineFramesByRVA Récupère une énumération qui permet à un client d’itérer au sein de tous les frames inclus sur une adresse virtuelle relative (RVA) spécifiée.
IDiaSymbol::findInlineFramesByVA Récupère une énumération qui permet à un client d’itérer au sein de tous les frames inline sur une adresse virtuelle spécifiée.
IDiaSymbol::findInputAssemblyFile Récupère le fichier d’assembly d’entrée .NET Native qui est le parent du symbole.
IDiaSymbol::findSymbolsByRVAForAcceleratorPointerTag Avec une valeur d’étiquette correspondante donnée, cette méthode renvoie une énumération de symboles contenus dans cette fonction stub à une adresse virtuelle relative spécifiée.
IDiaSymbol::findSymbolsForAcceleratorPointerTag Retourne le nombre d’étiquettes de pointeur d’accélérateur dans une fonction stub C++ AMP.
IDiaSymbol::get_acceleratorPointerTags Retourne toutes les valeurs de balise de pointeur d’accélérateur qui correspondent à une fonction stub d’accélérateur C++ AMP.
IDiaSymbol::get_access Récupère le modificateur d’accès d’un membre de classe.
IDiaSymbol::get_addressOffset Récupère la partie décalage d’un emplacement d’adresse.
IDiaSymbol::get_addressSection Récupère la partie section d’un emplacement d’adresse.
IDiaSymbol::get_addressTaken Récupère un indicateur signalant si un autre symbole fait référence à cette adresse.
IDiaSymbol::get_age Récupère la valeur d’âge d’une base de données de programme.
IDiaSymbol::get_arrayIndexType Récupère l’identificateur de symbole du type d’index de tableau.
IDiaSymbol::get_arrayIndexTypeId Récupère l’identificateur de type d’index de tableau du symbole.
IDiaSymbol::get_backEndBuild Récupère le numéro de build du back-end.
IDiaSymbol::get_backEndMajor Récupère le numéro de version principale du back-end.
IDiaSymbol::get_backEndMinor Récupère le numéro de version mineure du back-end.
IDiaSymbol::get_backEndQFE Récupère le numéro qfe principal.
IDiaSymbol::get_baseDataOffset Récupère le décalage des données de base.
IDiaSymbol::get_baseDataSlot Récupère l’emplacement des données de base.
IDiaSymbol::get_baseSymbol Récupère le symbole à partir duquel le pointeur est basé.
IDiaSymbol::get_baseSymbolId Récupère l’ID de symbole sur lequel repose le pointeur.
IDiaSymbol::get_baseType Récupère la balise de type d’un type simple.
IDiaSymbol::get_bindID Récupère l’index de registre de liaison.
IDiaSymbol::get_bindSlot Récupère la limite inférieure dans l’espace de liaison.
IDiaSymbol::get_bindSpace Récupère l’espace de liaison.
IDiaSymbol::get_bitPosition Récupère la position du bit d’un emplacement.
IDiaSymbol::get_builtInKind Récupère un type intégré de type HLSL.
IDiaSymbol::get_callingConvention Retourne un indicateur de la convention d’appel d’une méthode.
IDiaSymbol::get_characteristics Récupère les caractéristiques de cette section COFF.
IDiaSymbol::get_classParent Récupère une référence au parent de classe du symbole.
IDiaSymbol::get_classParentId Récupère l’identificateur parent de classe du symbole.
IDiaSymbol::get_code Récupère un indicateur qui signale si le symbole fait référence à une adresse de code.
IDiaSymbol::get_coffGroup Récupère le symbole du groupe COFF à partir duquel provient ce symbole.
IDiaSymbol::get_compilerGenerated Récupère un indicateur signalant si le symbole a été généré par le compilateur.
IDiaSymbol::get_compilerName Récupère le nom du compilateur utilisé pour créer le Compiland.
IDiaSymbol::get_constantExport Récupère un indicateur indiquant si cette exportation est CONSTANTE.
IDiaSymbol::get_constructor Récupère un indicateur signalant si le type de données défini par l’utilisateur a un constructeur.
IDiaSymbol::get_constType Récupère un indicateur signalant si le type de données défini par l’utilisateur est constant.
IDiaSymbol::get_container Récupère le symbole contenant de ce symbole.
IDiaSymbol::get_count Récupère le nombre d’éléments d’une liste ou d’un tableau.
IDiaSymbol::get_countLiveRanges Récupère le nombre de plages d’adresses valides associées au symbole local.
IDiaSymbol::get_customCallingConvention Récupère un indicateur signalant si la fonction utilise une convention d’appel personnalisée.
IDiaSymbol::get_dataBytes Récupère les octets de données d’un symbole OEM.
IDiaSymbol::get_dataExport Récupère un indicateur indiquant si cette exportation est DATA.
IDiaSymbol::get_dataKind Récupère la classification de variable d’un symbole de données.
IDiaSymbol::get_editAndContinueEnabled Récupère l’indicateur décrivant les fonctionnalités Modifier et Continuer du programme ou de l’unité que vous compilez.
IDiaSymbol::get_exceptionHandlerAddressOffset Récupère le décalage de section du gestionnaire d’exceptions.
IDiaSymbol::get_exceptionHandlerAddressSection Récupère le numéro de section du gestionnaire d’exceptions.
IDiaSymbol::get_exceptionHandlerRelativeVirtualAddress Récupère l’adresse virtuelle relative du gestionnaire d’exceptions.
IDiaSymbol::get_exceptionHandlerVirtualAddress Récupère l’adresse virtuelle du gestionnaire d’exceptions.
IDiaSymbol::get_exportHasExplicitlyAssignedOrdinal Récupère un indicateur indiquant si cette exportation a un ordinal attribué explicitement.
IDiaSymbol::get_exportIsForwarder Récupère un indicateur indiquant si cette exportation est un redirecteur.
IDiaSymbol::get_farReturn Récupère un indicateur signalant si la fonction utilise un retour lointain.
IDiaSymbol::get_finalLiveStaticSize Récupère la taille statique finale de la fonction active, après l’incorporation.
IDiaSymbol::get_framePointerPresent Récupère un indicateur indiquant si cette fonction a un pointeur d’image.
IDiaSymbol::get_frameSize Récupère la taille du cadre.
IDiaSymbol::get_frontEndBuild Récupère le numéro de build du front-end.
IDiaSymbol::get_frontEndMajor Récupère le numéro de version principale du front-end.
IDiaSymbol::get_frontEndMinor Récupère le numéro de version mineure du front-end.
IDiaSymbol::get_frontEndQFE Récupère le numéro de version du QFE frontal.
IDiaSymbol::get_function Récupère un indicateur signalant si le symbole public fait référence à une fonction.
IDiaSymbol::get_guid Récupère le GUID du symbole.
IDiaSymbol::get_hasAlloca Récupère un indicateur indiquant si la fonction contient un appel à alloca.
IDiaSymbol::get_hasAssignmentOperator Récupère un indicateur signalant si le type de données défini par l’utilisateur a des opérateurs d’affectation définis.
IDiaSymbol::get_hasCastOperator Récupère un indicateur signalant si le type de données défini par l’utilisateur a des opérateurs de cast définis.
IDiaSymbol::get_hasControlFlowCheck Récupère un indicateur indiquant si cette fonction contient des vérifications de flux de contrôle.
IDiaSymbol::get_hasDebugInfo Récupère un indicateur signalant si la compilation et contient des informations de débogage.
IDiaSymbol::get_hasEH Récupère un indicateur signalant si la fonction a un gestionnaire d’exceptions de style C++.
IDiaSymbol::get_hasEHa Récupère un indicateur signalant si la fonction a un gestionnaire d’exceptions asynchrone.
IDiaSymbol::get_hasInlAsm Récupère un indicateur signalant si la fonction a un assembly inline.
IDiaSymbol::get_hasLongJump Récupère un indicateur signalant si la fonction contient une commande longjmp (qui fait partie de la gestion des exceptions de style C).
IDiaSymbol::get_hasManagedCode Récupère un indicateur signalant si le module contient du code managé.
IDiaSymbol::get_hasNestedTypes Récupère un indicateur signalant si le type de données défini par l’utilisateur a des définitions de type imbriquées.
IDiaSymbol::get_hasSecurityChecks Récupère un indicateur indiquant si la fonction ou la compilation a des contrôles de sécurité compilés (via le commutateur du compilateur /GS (Vérification de la sécurité des mémoires tampons)).
IDiaSymbol::get_hasSEH Récupère un indicateur signalant si la fonction a une gestion structurée des exceptions de style Win32.
IDiaSymbol::get_hasSetJump Récupère un indicateur signalant si la fonction contient une commande setjmp.
IDiaSymbol::get_hasValidPGOCounts Récupère un indicateur indiquant si ces symboles ont des nombres PGO valides.
IDiaSymbol::get_hfaDouble Récupère un indicateur qui spécifie si un type défini par l’utilisateur (UDT) contient des données d’agrégat à virgule flottante homogène (HFA, homogeneous floating-point aggregate) de type double.
IDiaSymbol::get_hfaFloat Récupère un indicateur qui spécifie si un type défini par l’utilisateur (UDT) contient des données d’agrégation à virgule flottante homogènes (HFA) de type float.
IDiaSymbol::get_indirectVirtualBaseClass Récupère un indicateur signalant si le type de données défini par l’utilisateur est une classe de base virtuelle indirecte.
IDiaSymbol::get_InlSpec Récupère un indicateur signalant si la fonction a été marquée avec l’attribut inline.
IDiaSymbol::get_interruptReturn Récupère un indicateur signalant si la fonction a un retour à partir d’une instruction d’interruption.
IDiaSymbol::get_intrinsic Récupère un indicateur qui spécifie si une classe est un type intrinsèque.
IDiaSymbol::get_intro Récupère un indicateur signalant si la fonction est la fonction virtuelle de classe de base.
IDiaSymbol::get_isAcceleratorGroupSharedLocal Récupère un indicateur signalant si le symbole correspond à une variable locale partagée de groupe dans le code compilé pour un accélérateur C++ AMP.
IDiaSymbol::get_isAcceleratorPointerTagLiveRange Récupère un indicateur qui spécifie si le symbole correspond au symbole de plage de définition pour le composant d’étiquette d’une variable de pointeur dans le code compilé pour un accélérateur C++ AMP. Le symbole de plage de définition est l’emplacement d’une variable pour une étendue d’adresses.
IDiaSymbol::get_isAcceleratorStubFunction Indique si le symbole correspond à un symbole de fonction de niveau supérieur pour un nuanceur compilé pour un accélérateur qui correspond à un appel parallel_for_each.
IDiaSymbol::get_isAggregated Récupère un indicateur signalant si les données font partie d’un agrégat de nombreux symboles.
IDiaSymbol::get_isConstructorVirtualBase Récupère un indicateur indiquant s’il s’agit d’un constructeur d’instance d’une classe avec une base virtuelle.
IDiaSymbol::get_isCTypes Récupère un indicateur signalant si le fichier de symboles contient des types C.
IDiaSymbol::get_isCVTCIL Récupère un indicateur signalant si le module a été converti du langage CIL (Common Intermediate Language) en code natif.
IDiaSymbol::get_isCxxReturnUdt Récupère un indicateur indiquant si le type UDT de style C++ est retourné.
IDiaSymbol::get_isDataAligned Récupère un indicateur signalant si les éléments d’un type de données défini par l’utilisateur sont alignés sur une limite spécifique.
IDiaSymbol::get_isHLSLData Spécifie si ce symbole représente des données HLSL (High Level Shader Language).
IDiaSymbol::get_isHotpatchable Récupère un indicateur indiquant si le module a été compilé avec le commutateur du compilateur /hotpatch (Créer une image corrigeable en mémoire).
IDiaSymbol::get_isInterfaceUdt Récupère un indicateur indiquant si le type est un type défini par l’utilisateur (UDT) de l’interface WinRT.
IDiaSymbol::get_isLocationControlFlowDependent Récupère un indicateur indiquant si la durée de vie d’un symbole local dépend du flux de contrôle de la fonction.
IDiaSymbol::get_isLTCG Récupère un indicateur signalant si le compiland managé a été lié à la LTCG de l’éditeur de liens.
IDiaSymbol::get_isMatrixRowMajor Spécifie si la matrice est définie sur la ligne principale.
IDiaSymbol::get_isMSILNetmodule Récupère un indicateur signalant si le compiland managé est un .netmodule (contenant uniquement des métadonnées).
IDiaSymbol::get_isMultipleInheritance Spécifie si le pointeur this pointe vers un membre de données avec héritage multiple.
IDiaSymbol::get_isNaked Récupère un indicateur indiquant si la fonction a l’attribut naked.
IDiaSymbol::get_isOptimizedAway Spécifie si la variable est optimisée.
IDiaSymbol::get_isOptimizedForSpeed Récupère un indicateur indiquant si la fonction est optimisée pour la vitesse.
IDiaSymbol::get_isPGO Récupère un indicateur indiquant si PGO a été activé.
IDiaSymbol::get_isPointerBasedOnSymbolValue Spécifie si le pointeur this est basé sur une valeur de symbole.
IDiaSymbol::get_isPointerToDataMember Spécifie si ce symbole est un pointeur vers un membre de données.
IDiaSymbol::get_isPointerToMemberFunction Spécifie si ce symbole est un pointeur vers une fonction membre.
IDiaSymbol::get_isRefUdt Récupère un indicateur indiquant s’il s’agit d’un type défini par l’utilisateur (UDT) de référence WinRT.
IDiaSymbol::get_isReturnValue Spécifie si la variable contient une valeur de retour.
IDiaSymbol::get_isSafeBuffers Récupère un indicateur qui spécifie si la directive de préprocesseur pour une mémoire tampon sécurisée est utilisée.
IDiaSymbol::get_isSdl Spécifie si le module est compilé avec l’option /SDL.
IDiaSymbol::get_isSingleInheritance Spécifie si le pointeur this pointe vers un membre de données avec héritage unique.
IDiaSymbol::get_isSplitted Récupère un indicateur signalant si les données ont été divisées en un agrégat de symboles distincts.
IDiaSymbol::get_isStatic Récupère un indicateur signalant si une fonction ou une couche thunk est statique.
IDiaSymbol::get_isStripped Récupère un indicateur signalant si les symboles privés ont été supprimés du fichier de symboles.
IDiaSymbol::get_isValueUdt Récupère un indicateur indiquant s’il s’agit d’un type défini par l’utilisateur (UDT) de valeur WinRT.
IDiaSymbol::get_isVirtualInheritance Spécifie si le pointeur this pointe vers un membre de données avec héritage virtuel.
IDiaSymbol::get_isWinRTPointer Récupère un indicateur indiquant s’il s’agit d’un type de pointeur WinRT.
IDiaSymbol::get_language Récupère le langage de la source.
IDiaSymbol::get_length Récupère le nombre d’octets de mémoire utilisés par l’objet représenté par ce symbole.
IDiaSymbol::get_lexicalParent Récupère une référence au parent lexical du symbole.
IDiaSymbol::get_lexicalParentId Récupère l’identificateur parent lexical du symbole.
IDiaSymbol::get_libraryName Récupère le nom de fichier de la bibliothèque ou du fichier objet à partir duquel l’objet a été chargé.
IDiaSymbol::get_liveRangeLength Retourne la longueur de la plage d’adresses dans laquelle le symbole local est valide.
IDiaSymbol::get_liveRangeStartAddressOffset Retourne la partie décalage de la plage d’adresses de départ dans laquelle le symbole local est valide.
IDiaSymbol::get_liveRangeStartAddressSection Retourne la partie section de la plage d’adresses de départ dans laquelle le symbole local est valide.
IDiaSymbol::get_liveRangeStartRelativeVirtualAddress Retourne le début de la plage d’adresses dans laquelle le symbole local est valide.
IDiaSymbol::get_localBasePointerRegisterId Récupère le pointeur de base du registre contenant le pointeur de base vers les locaux.
IDiaSymbol::get_locationType Récupère le type de l’emplacement d’un symbole de données.
IDiaSymbol::get_lowerBound Récupère la limite inférieure d’une dimension de tableau FORTRAN.
IDiaSymbol::get_lowerBoundId Récupère l’identificateur de symbole de la limite inférieure d’une dimension de tableau FORTRAN.
IDiaSymbol::get_machineType Récupère le type du processeur cible.
IDiaSymbol::get_managed Récupère un indicateur signalant si le symbole fait référence au code managé.
IDiaSymbol::get_memorySpaceKind Récupère le type d’espace mémoire.
IDiaSymbol::get_modifierValues Récupère l’ensemble de modifères pour ce symbole.
IDiaSymbol::get_msil Récupère un indicateur signalant si le symbole fait référence au code MSIL (Microsoft Intermediate Language).
IDiaSymbol::get_name Récupère le nom du symbole.
IDiaSymbol::get_nested Récupère un indicateur signalant si le type de données défini par l’utilisateur est imbriqué.
IDiaSymbol::get_noInline Récupère un indicateur indiquant si la fonction est marquée avec l’attribut noinline .
IDiaSymbol::get_noNameExport Récupère un indicateur indiquant si cette exportation est NONAME.
IDiaSymbol::get_noReturn Récupère un indicateur indiquant si la fonction a été déclarée avec l’attribut noreturn.
IDiaSymbol::get_noStackOrdering Récupère un indicateur signalant si aucun classement de pile n’a pu être effectué dans le cadre de la vérification de la mémoire tampon de la pile.
IDiaSymbol::get_notReached Récupère un indicateur signalant si la fonction ou l’étiquette n’est jamais atteinte.
IDiaSymbol::get_numberOfAcceleratorPointerTags Retourne le nombre d’étiquettes de pointeur d’accélérateur dans une fonction stub C++ AMP.
IDiaSymbol::get_numberOfColumns Récupère le nombre de colonnes dans la matrice.
IDiaSymbol::get_numberOfModifiers Récupère le nombre de modificateurs appliqués au type d’origine.
IDiaSymbol::get_numberOfRegisterIndices Récupère le nombre d’index de registre.
IDiaSymbol::get_numberOfRows Récupère le nombre de lignes dans la matrice.
IDiaSymbol::get_numericProperties Récupère l’ensemble des propriétés numériques pour ce symbole.
IDiaSymbol::get_objectFileName Récupère le nom du fichier objet.
IDiaSymbol::get_objectPointerType Récupère le type du pointeur d’objet pour une méthode de classe.
IDiaSymbol::get_oemId Récupère la valeur du symbole oemId.
IDiaSymbol::get_oemSymbolId Récupère la valeur du symbole oemSymbolId.
IDiaSymbol::get_offset Récupère le décalage de l’emplacement du symbole.
IDiaSymbol::get_offsetInUdt Récupère le décalage de champ de ce symbole dans le type défini par l’utilisateur externe (UDT).
IDiaSymbol::get_optimizedCodeDebugInfo Récupère un indicateur signalant si la fonction ou l’étiquette contient du code optimisé ainsi que des informations de débogage.
IDiaSymbol::get_ordinal Récupère l’ordinal de cette exportation.
IDiaSymbol::get_overloadedOperator Récupère un indicateur signalant si le type de données défini par l’utilisateur a des opérateurs surchargés.
IDiaSymbol::get_packed Récupère un indicateur signalant si le type de données défini par l’utilisateur est empaqueté.
IDiaSymbol::get_paramBasePointerRegisterId Récupère l’indicateur d’inscription du registre contenant le pointeur de base vers les paramètres.
IDiaSymbol::get_PGODynamicInstructionCount Récupère le nombre d’instructions dynamiques calculé par l’entraînement.
IDiaSymbol::get_PGOEdgeCount Récupère le nombre de bords entre un appelant/appelé et son parent.
IDiaSymbol::get_PGOEntryCount Récupère le nombre total d’appels dans l’entraînement PGO.
IDiaSymbol::get_phaseName Récupère la phase dont cette fonction est membre pour les builds multiphasées PGO.
IDiaSymbol::get_platform Récupère le type de plateforme pour lequel le programme ou compiland a été compilé.
IDiaSymbol::get_privateExport Récupère un indicateur indiquant si cette exportation est PRIVATE.
IDiaSymbol::get_pure Récupère un indicateur qui indique si la fonction est purement virtuelle.
IDiaSymbol::get_rank Récupère le rang d’un tableau multidimensionnel FORTRAN.
IDiaSymbol::get_reference Récupère un indicateur signalant si un type de pointeur est une référence.
IDiaSymbol::get_registerId Récupère l’identificateur de registre de l’emplacement.
IDiaSymbol::get_registerType Récupère le type de registre.
IDiaSymbol::get_relativeVirtualAddress Récupère l’adresse virtuelle relative (RVA) de l’emplacement.
IDiaSymbol::get_restrictedType Spécifie si le pointeur this est marqué comme restreint.
IDiaSymbol::get_RValueReference Récupère un indicateur qui spécifie si un type de pointeur est une référence rvalue.
IDiaSymbol::get_samplerSlot Récupère l’emplacement de l’échantillonneur.
IDiaSymbol::get_scoped Récupère un indicateur signalant si le type de données défini par l’utilisateur apparaît dans une étendue lexicale non globale.
IDiaSymbol::get_sealed Récupère un indicateur qui spécifie si la classe ou la méthode est sealed.
IDiaSymbol::get_signature Récupère la valeur de signature du symbole.
IDiaSymbol::get_sizeInUdt Récupère la taille d’un membre d’un type défini par l’utilisateur.
IDiaSymbol::get_slot Récupère le numéro d’emplacement de l’emplacement.
IDiaSymbol::get_sourceFileName Récupère le nom de fichier du fichier source.
IDiaSymbol::get_staticSize Récupère le nombre d’instructions statiques.
IDiaSymbol::get_strictGSCheck Récupère un indicateur indiquant si cette fonction a été compilée avec strict_gs_check pragma activé.
IDiaSymbol::get_stride Récupère le pas de la matrice ou du tableau à pas.
IDiaSymbol::get_subType Récupère le sous-type.
IDiaSymbol::get_subTypeId Récupère l’ID de sous-type.
IDiaSymbol::get_symbolsFileName Récupère le nom du fichier à partir duquel les symboles ont été chargés.
IDiaSymbol::get_symIndexId Récupère l’identificateur de symbole unique.
IDiaSymbol::get_symTag Récupère le classifieur de type de symbole.
IDiaSymbol::get_targetOffset Récupère la section de décalage d’une cible thunk.
IDiaSymbol::get_targetRelativeVirtualAddress Récupère l’adresse virtuelle relative (RVA) d’une cible thunk.
IDiaSymbol::get_targetSection Récupère la section adresse d’une cible thunk.
IDiaSymbol::get_targetVirtualAddress Récupère l’adresse virtuelle (VA) d’une cible thunk.
IDiaSymbol::get_textureSlot Récupère l’emplacement de la texture.
IDiaSymbol::get_thisAdjust Récupère l’ajusteur logique this pour la méthode.
IDiaSymbol::get_thunkOrdinal Récupère le type thunk d’une fonction.
IDiaSymbol::get_timeStamp Récupère le timestamp du fichier exécutable sous-jacent.
IDiaSymbol::get_token Récupère le jeton de métadonnées d’une fonction ou d’une variable managée.
IDiaSymbol::get_type Récupère une référence à la signature de fonction.
IDiaSymbol::get_typeId Récupère l’identificateur de type du symbole.
IDiaSymbol::get_typeIds Récupère un tableau de valeurs d’identificateurs de type propres au compilateur pour ce symbole.
IDiaSymbol::get_types Récupère un tableau de valeurs de type spécifiques au compilateur pour ce symbole.
IDiaSymbol::get_uavSlot Récupère l’emplacement uav.
IDiaSymbol::get_udtKind Récupère la variété d’un type défini par l’utilisateur (UDT).
IDiaSymbol::get_unalignedType Récupère un indicateur signalant si le type de données défini par l’utilisateur n’est pas aligné.
IDiaSymbol::get_undecoratedName Récupère le nom non décoré d’un nom C++ décoré ou de liaison.
IDiaSymbol::get_undecoratedNameEx Extension de la méthode get_undecoratedName qui récupère le nom non décodé en fonction de la valeur d’un champ d’extension.
IDiaSymbol::get_unmodifiedType Récupère le type original (non modifié) de ce symbole.
IDiaSymbol::get_unmodifiedTypeId Récupère l’ID du type d’origine (non modifié).
IDiaSymbol::get_unused Fonction déconseillée.
IDiaSymbol::get_upperBound Récupère la limite supérieure d’une dimension de tableau FORTRAN.
IDiaSymbol::get_upperBoundId Récupère l’identificateur de symbole de la limite supérieure d’une dimension de tableau FORTRAN.
IDiaSymbol::get_value Récupère la valeur d’une constante.
IDiaSymbol::get_virtual Récupère un indicateur signalant si la fonction est virtuelle.
IDiaSymbol::get_virtualAddress Récupère l’adresse virtuelle (VA) de l’emplacement.
IDiaSymbol::get_virtualBaseClass Récupère un indicateur signalant si le type de données défini par l’utilisateur est une classe de base virtuelle.
IDiaSymbol::get_virtualBaseDispIndex Récupère l’index dans la table de déplacement de base virtuelle.
IDiaSymbol::get_virtualBaseOffset Récupère le décalage dans la table de fonctions virtuelles d’une fonction virtuelle.
IDiaSymbol::get_virtualBasePointerOffset Récupère le décalage du pointeur de base virtuel.
IDiaSymbol::get_virtualBaseTableType Récupère le type d’un pointeur de table de base virtuelle.
IDiaSymbol::get_virtualTableShape Récupère l’interface de symboles du type de la table virtuelle pour un type défini par l’utilisateur.
IDiaSymbol::get_virtualTableShapeId Récupère l’identificateur de forme de table virtuelle du symbole.
IDiaSymbol::get_volatileType Récupère un indicateur signalant si le type de données défini par l’utilisateur est volatile.
IDiaSymbol::get_wasInlined Récupère un indicateur indiquant si ce symbole de fonction a été incorporé dans une autre fonction.
IDiaSymbol::getSrcLineOnTypeDefn Récupère le fichier source et le numéro de ligne qui indiquent où un type défini par l’utilisateur spécifié est défini.

Notes

Remarques pour les appelants

Obtenez cette interface en appelant l’une des méthodes suivantes :

Exemple

Cet exemple montre comment afficher les variables locales d’une fonction à une adresse virtuelle relative donnée. Il montre également comment les symboles de différents types sont liés les uns aux autres.

Notes

CDiaBSTR est une classe qui encapsule un BSTR et qui gère automatiquement la libération de la chaîne quand l’instanciation sort de l’étendue.

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." );
        }
    };
}

Configuration requise

Header: Dia2.h

Bibliothèque : diaguids.lib

DLL : msdia140.dll

Voir aussi