Freigeben über


SymTagEnum

Gibt den Typ des Symbols an.

Syntax

enum SymTagEnum {
    SymTagNull,
    SymTagExe,
    SymTagCompiland,
    SymTagCompilandDetails,
    SymTagCompilandEnv,
    SymTagFunction,
    SymTagBlock,
    SymTagData,
    SymTagAnnotation,
    SymTagLabel,
    SymTagPublicSymbol,
    SymTagUDT,
    SymTagEnum,
    SymTagFunctionType,
    SymTagPointerType,
    SymTagArrayType,
    SymTagBaseType,
    SymTagTypedef,
    SymTagBaseClass,
    SymTagFriend,
    SymTagFunctionArgType,
    SymTagFuncDebugStart,
    SymTagFuncDebugEnd,
    SymTagUsingNamespace,
    SymTagVTableShape,
    SymTagVTable,
    SymTagCustom,
    SymTagThunk,
    SymTagCustomType,
    SymTagManagedType,
    SymTagDimension,
    SymTagCallSite,
    SymTagInlineSite,
    SymTagBaseInterface,
    SymTagVectorType,
    SymTagMatrixType,
    SymTagHLSLType,
    SymTagCaller,
    SymTagCallee,
    SymTagExport,
    SymTagHeapAllocationSite,
    SymTagCoffGroup,
    SymTagInlinee,
    SymTagTaggedUnionCase,
};

Elemente

Element Beschreibung
SymTagNull Gibt an, dass das Symbol keinen Typ aufweist.
SymTagExe Gibt an, dass das Symbol eine .exe Datei ist.
Pro Symbolspeicher gibt es nur ein SymTagExe Symbol.
Sie dient als globaler Bereich und hat kein lexikalisches übergeordnetes Element.
SymTagCompiland Gibt das Compiland-Symbol für jede Compiland-Komponente des Symbolspeichers an.
Bei systemeigenen Anwendungen entsprechen Symbole den objektdateien, SymTagCompiland die mit dem Bild verknüpft sind. Für einige Arten von MSIL-Bildern (Microsoft Intermediate Language) gibt es pro Klasse ein Kompiland.
SymTagCompilandDetails Gibt an, dass das Symbol erweiterte Attribute des Compiland enthält.
Das Abrufen dieser Eigenschaften erfordert möglicherweise das Laden von Compiland-Symbolen.
SymTagCompilandEnv Gibt an, dass das Symbol eine Umgebungszeichenfolge ist, die für das Compiland definiert ist.
SymTagFunction Gibt an, dass das Symbol eine Funktion ist.
SymTagBlock Gibt an, dass das Symbol ein geschachtelter Block ist.
SymTagData Gibt an, dass das Symbol Daten ist.
SymTagAnnotation Gibt an, dass das Symbol für eine Codeanmerkung gilt.
Untergeordnete Elemente dieses Symbols sind konstante Datenzeichenfolgen (SymTagData, LocIsConstantund DataIsConstant).
Die meisten Clients ignorieren dieses Symbol.
SymTagLabel Gibt an, dass das Symbol eine Beschriftung ist.
SymTagPublicSymbol Gibt an, dass das Symbol ein öffentliches Symbol ist. Bei nativen Anwendungen ist dieses Symbol das externe COFF-Symbol, das beim Verknüpfen des Images vorkommt.
SymTagUDT Gibt an, dass das Symbol ein benutzerdefinierter Typ (Struktur, Klasse oder Union) ist.
SymTagEnum Gibt an, dass das Symbol eine Aufzählung ist.
SymTagFunctionType Gibt an, dass das Symbol ein Funktionssignaturtyp ist.
SymTagPointerType Gibt an, dass das Symbol ein Zeigertyp ist.
SymTagArrayType Gibt an, dass das Symbol ein Arraytyp ist.
SymTagBaseType Gibt an, dass das Symbol ein Basistyp ist.
SymTagTypedef Gibt an, dass das Symbol ein typedef Alias für einen anderen Typ ist.
SymTagBaseClass Gibt an, dass das Symbol eine Basisklasse eines benutzerdefinierten Typs ist.
SymTagFriend Gibt an, dass das Symbol ein Freund eines benutzerdefinierten Typs ist.
SymTagFunctionArgType Gibt an, dass das Symbol ein Funktionsargument ist.
SymTagFuncDebugStart Gibt an, dass das Symbol die Endposition des Prologcodes der Funktion ist.
SymTagFuncDebugEnd Gibt an, dass das Symbol die Anfangsposition des Epilogcodes der Funktion ist.
SymTagUsingNamespace Gibt an, dass das Symbol ein Namespacename ist, der im aktuellen Bereich aktiv ist.
SymTagVTableShape Gibt an, dass das Symbol eine beschreibung der virtuellen Tabelle ist.
SymTagVTable Gibt an, dass das Symbol ein virtueller Tabellenzeiger ist.
SymTagCustom Gibt an, dass das Symbol ein benutzerdefiniertes Symbol ist.
Das MICROSOFT Debug Interface Access (DIA)-SDK bietet keine weitere Interpretation dieser Symbole.
SymTagThunk Gibt an, dass das Symbol ein Thunk ist, der zum Freigeben von Daten zwischen 16-Bit- und 32-Bit-Code verwendet wird.
SymTagCustomType Gibt an, dass das Symbol ein benutzerdefiniertes Compilersymbol ist.
SymTagManagedType Gibt an, dass sich das Symbol in Metadaten befindet.
SymTagDimension Gibt an, dass das Symbol ein mehrdimensionales FORTRAN-Array ist.
SymTagCallSite Gibt an, dass das Symbol die Anrufwebsite darstellt.
SymTagInlineSite Gibt an, dass das Symbol die Inlinewebsite darstellt.
SymTagBaseInterface Gibt an, dass das Symbol eine Basisschnittstelle ist.
SymTagVectorType Gibt an, dass das Symbol ein Vektortyp ist.
SymTagMatrixType Gibt an, dass das Symbol ein Matrixtyp ist.
SymTagHLSLType Gibt an, dass das Symbol ein Shader-Sprachtyp auf hoher Ebene ist.
SymTagCaller Gibt an, dass das Symbol Profilgesteuerte Optimierungsinformationen (PGO)-Anruferinformationen darstellt.
SymTagCallee Gibt an, dass das Symbol PGO angerufene Informationen darstellt.
SymTagExport Gibt an, dass das Symbol ein Export aus einer DLL ist.
SymTagHeapAllocationSite Gibt an, dass das Symbol einen Heap-Zuordnungsstandort darstellt (z. B. ein Aufruf von operator new)
SymTagCoffGroup Gibt an, dass das Symbol eine COFF-Gruppe ist.
SymTagInlinee Gibt an, dass das Symbol die Inlinee einer Inlinewebsite darstellt (siehe SymTagInlineSite).
SymTagTaggedUnionCase Gibt an, dass das Symbol eine markierte Vereinigung ist (z. B. Rosts Enumerationstyp)

Hinweise

Alle Symbole in einer Debugdatei verfügen über ein identifizierendes Tag, das den Typ des Symbols angibt.

Die IDiaSymbol::get_symTag Methode gibt Werte aus dieser Aufzählung zurück.

Die Werte in dieser Enumeration werden an die folgenden Methoden übergeben, um den Bereich der Suche auf einen bestimmten Symboltyp zu beschränken:

Anforderungen

Header: cvconst.h

Weitere Informationen