Freigeben über


FIELD_INFO-Struktur (wdbgexts.h)

Die FIELD_INFO-Struktur wird vom IG_DUMP_SYMBOL_INFOIoctl-Vorgang verwendet, um Informationen zu einem Member in einer Struktur bereitzustellen.

Syntax

typedef struct _FIELD_INFO {
  PUCHAR    fName;
  PUCHAR    printName;
  ULONG     size;
  ULONG     fOptions;
  ULONG64   address;
  union {
    PVOID fieldCallBack;
    PVOID pBuffer;
  };
  ULONG     TypeId;
  ULONG     FieldOffset;
  ULONG     BufferSize;
  struct {
    USHORT Position;
    USHORT Size;
  } BitField;
  _BitField _BitField;
  ULONG     fPointer : 2;
  ULONG     fArray : 1;
  ULONG     fStruct : 1;
  ULONG     fConstant : 1;
  ULONG     fStatic : 1;
  ULONG     Reserved : 26;
} FIELD_INFO, *PFIELD_INFO;

Member

fName

Gibt den Namen des Elements des Symbols an, auf das diese Struktur angewendet wird. Untergruppen können mithilfe der Trennzeichen "." und "->" angegeben werden. Sofern DBG_DUMP_FIELD_FULL_NAME nicht in fOptions festgelegt ist, wird fName als Anfang des Membernamens betrachtet.

printName

Gibt einen alternativen Namen an, der beim Drucken des Namens des Members verwendet werden soll. Wenn printNameNULL ist, wird der tatsächliche Name des Members verwendet, wenn der Name des Members gedruckt wird.

size

Empfängt die Größe des durch fName angegebenen Elements im Arbeitsspeicher des Ziels in Bytes.

Wenn das Element ein Array ist, gibt size die Anzahl der Elemente im Array an.

fOptions

Gibt die Flags an, die das Verhalten des IG_DUMP_SYMBOL_INFO Ioctl-Vorgangs bestimmen. Eine Beschreibung dieser Flags finden Sie unter DBG_DUMP_FIELD_XXX.

address

Empfängt die Adresse im Speicher des Durch fName angegebenen Elements im Speicher des Ziels. Wenn für den Symboltyp in SYM_DUMP_PARAM keine Adresse angegeben wird. addr, address empfängt den Offset des Members relativ zum Anfang einer instance des Typs. Weitere Informationen zu SYM_DUMP_PARAM finden Sie unter IG_DUMP_SYMBOL_INFO.

fieldCallBack

Gibt eine PSYM_DUMP_FIELD_CALLBACK Rückruffunktion an, die mit den Informationen über den member aufgerufen werden soll, der durch fName angegeben wird. Der Rückruffunktion wird eine Struktur mit den Feldinformationen und dem Wert von SYM_DUMP_PARAM übergeben. kontext.

Es wird keine Rückruffunktion aufgerufen, wenn DBG_DUMP_FIELD_NO_CALLBACK_REQ in fOptions festgelegt ist, fieldCallBacknull ist oder der options-Member der an Ioctl übergebenen SYM_DUMP_PARAM-Struktur nicht DBG_DUMP_CALL_FOR_EACH festgelegt ist. Wenn DBG_DUMP_FIELD_COPY_FIELD_DATA in fOptions festgelegt ist, wird fieldCallBack nicht verwendet.

pBuffer

Gibt einen Puffer an, der den Wert des durch fName angegebenen Elements empfangen soll. Dieser Member wird nur verwendet, wenn DBG_DUMP_FIELD_COPY_FIELD_DATA in fOptions festgelegt ist.

TypeId

Empfängt den Bezeichner für den Typ des Members, der durch fName angegeben wird.

FieldOffset

Empfängt den Offset des Members innerhalb der -Struktur.

BufferSize

Gibt die Größe des pBuffer-Puffers in Bytes an.

BitField

Empfängt Informationen zu Bitfeldern in einer Struktur.

BitField.Position

Empfängt die Startposition des Bitfelds. Dies ist die Anzahl der Bits vom Anfang der Struktur bis zum Bitfeld.

BitField.Size

Empfängt die Größe des Bitfelds in Bits.

_BitField

Empfängt Informationen zu Bitfeldern in einer Struktur.

fPointer

Empfängt einen booleschen Wert, der angibt, ob der Member ein Zeiger ist. fPointer ist FALSE , wenn der Member kein Zeiger ist. Dies ist 1, wenn der Member ein 32-Bit-Zeiger ist, und 3, wenn der Member ein 64-Bit-Zeiger ist.

fArray

Empfängt einen booleschen Wert, der angibt, ob das Element ein Array ist. fArray ist FALSE , wenn das Feld kein Array ist, und TRUE , wenn es ist.

fStruct

Empfängt einen booleschen Wert, der angibt, ob das Element eine -Struktur ist. fStruct ist FALSE , wenn der Member keine Struktur ist, und TRUE , wenn es ist.

fConstant

Empfängt einen booleschen Wert, der angibt, ob der Member eine Konstante ist. fConstant ist FALSE , wenn der Member keine Konstante ist, und TRUE , wenn dies der Fall ist.

fStatic

Reserved

Hinweise

Beim Aufrufen des IG_DUMP_SYMBOL_INFOIoctl-Vorgangs sollte der fName-Member dieser Struktur auf den Namen des Symbolelements festgelegt werden, auf das diese Struktur angewendet wird, und das fOptions-Element sollte die gewünschte Funktionalität des Vorgangs widerspiegeln. Die anderen Mitglieder sind entweder optional oder werden von Ioctl ausgefüllt.

Anforderungen

Anforderung Wert
Header wdbgexts.h

Weitere Informationen

DBG_DUMP_FIELD_XXX

IG_DUMP_SYMBOL_INFO

Ioctl

PSYM_DUMP_FIELD_CALLBACK