DEBUG_TYPED_DATA-Struktur (wdbgexts.h)

Die DEBUG_TYPED_DATA-Struktur beschreibt typisierte Daten im Speicher des Ziels.

Syntax

typedef struct _DEBUG_TYPED_DATA {
  ULONG64 ModBase;
  ULONG64 Offset;
  ULONG64 EngineHandle;
  ULONG64 Data;
  ULONG   Size;
  ULONG   Flags;
  ULONG   TypeId;
  ULONG   BaseTypeId;
  ULONG   Tag;
  ULONG   Register;
  ULONG64 Internal[9];
} DEBUG_TYPED_DATA, *PDEBUG_TYPED_DATA;

Member

ModBase

Die Basisadresse des Moduls im virtuellen Adressraum des Ziels, das die eingegebenen Daten enthält.

Offset

Der Speicherort der eingegebenen Daten im Speicher des Ziels. Offset ist eine Adresse des virtuellen Speichers, es sei denn, es sind Flags vorhanden, die angeben, dass Offset eine adresse des physischen Arbeitsspeichers ist.

EngineHandle

Auf NULL festlegen.

Data

Die Daten werden in eine ULONG64 umgewandelt. Wenn Flags das DEBUG_TYPED_DATA_IS_IN_MEMORY-Flag nicht enthält, sind die Daten nicht verfügbar, und Data ist auf 0 festgelegt.

Size

Die Größe der Daten in Bytes.

Flags

Die Flags, die den Arbeitsspeicher des Ziels beschreiben, in dem sich die Daten befinden. Die folgenden Bitflags können festgelegt werden.

Flag Beschreibung
DEBUG_TYPED_DATA_IS_IN_MEMORY Die Daten befinden sich im Speicher des Ziels und sind verfügbar.
DEBUG_TYPED_DATA_PHYSICAL_DEFAULT Offset ist eine Adresse des physischen Arbeitsspeichers, und der physische Arbeitsspeicher bei Offset verwendet die Standardspeicherspeicherung.
DEBUG_TYPED_DATA_PHYSICAL_CACHED Offset ist eine Adresse des physischen Arbeitsspeichers, und der physische Arbeitsspeicher bei Offset wird zwischengespeichert.
DEBUG_TYPED_DATA_PHYSICAL_UNCACHED Offset ist eine Adresse des physischen Arbeitsspeichers, und der physische Arbeitsspeicher bei Offset ist nicht zwischengespeichert.
DEBUG_TYPED_DATA_PHYSICAL_WRITE_COMBINED Offset ist eine Adresse des physischen Arbeitsspeichers, und der physische Arbeitsspeicher bei Offset wird kombiniert.

TypeId

Die Typ-ID für den Datentyp.

BaseTypeId

Bei generierten Typen die Typ-ID des Typs, auf dem der Typ der Daten basiert. Wenn die eingegebenen Daten beispielsweise einen Zeiger (oder ein Array) darstellen, ist BaseTypeId der Typ des Objekts, auf das verwiesen wird (oder im Array gehalten wird).

Für andere Typen ist BaseTypeId mit TypeId identisch.

Tag

Das Symboltag der eingegebenen Daten. Dies ist ein Wert aus der SymTagEnum-Enumeration . Beschreibungen der Werte finden Sie in der Dokumentation zur DbgHelp-API.

Register

Der Index des Registers des Verarbeiters, das die Daten enthält, oder null, wenn die Daten nicht in einem Register enthalten sind. (Beachten Sie, dass der Nullwert entweder darstellen kann, dass sich die Daten nicht in einem Register oder im Register befindet, dessen Index 0 ist.)

Internal[9]

Interne Debugger-Engine-Daten .

Hinweise

Instanzen dieser Struktur sollten mithilfe des Vorgangs DEBUG_REQUEST_EXT_TYPED_DATA_ANSI Anforderung bearbeitet werden. Insbesondere sollten Instanzen mit dieser Methode erstellt und freigegeben werden, und Member dieser Struktur sollten nicht direkt geändert werden.

Es gibt eine Ausnahme von der vorherigen Regel: Die EXT_TDOP_SET_FROM_TYPE_ID_AND_U64 und EXT_TDOP_SET_PTR_FROM_TYPE_ID_AND_U64 Unteroperationen nehmen einen DEBUG_TYPED_DATA instance an, der nicht mit der Request-Methode bearbeitet wird. Diese Unteroperationen verwenden einen manuell erstellten instance, bei dem einige Elemente manuell ausgefüllt werden.

Hinweis Schließen Sie WdbgExts.h ein, bevor Sie DbgEng.h einschließen. Darüber hinaus ist SymTagEnum in DbgHelp.h definiert (einschließlich DbgHelp.h).
 

Anforderungen

Anforderung Wert
Header wdbgexts.h (einschließen von WdbgExts.h)

Weitere Informationen

DEBUG_REQUEST_EXT_TYPED_DATA_ANSI

Anforderung