Поделиться через


структура FIELD_INFO (wdbgexts.h)

Структура FIELD_INFO используется операцией IG_DUMP_SYMBOL_INFOIoctl для предоставления сведений о члене в структуре.

Синтаксис

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;

Члены

fName

Указывает имя члена символа, к которому применяется эта структура. Вложенные значения можно указать с помощью разделителей "". и "->". Если DBG_DUMP_FIELD_FULL_NAME не задано в fOptions, fName считается началом имени члена.

printName

Указывает альтернативное имя, используемое при печати имени элемента. Если значение printName равно NULL, фактическое имя элемента используется при печати имени элемента.

size

Получает размер в памяти целевого объекта в байтах элемента, указанного fName.

Если элемент является массивом, размер указывает количество элементов в массиве.

fOptions

Задает флаги, определяющие поведение операции IG_DUMP_SYMBOL_INFO Ioctl . Описание этих флагов см. в DBG_DUMP_FIELD_XXX.

address

Получает адрес в памяти целевого элемента, указанного fName. Если адрес не указан для типа символа в SYM_DUMP_PARAM. addr, адрес получает смещение элемента относительно начала экземпляра типа. Дополнительные сведения о SYM_DUMP_PARAM см. в IG_DUMP_SYMBOL_INFO.

fieldCallBack

Указывает функцию обратного вызова PSYM_DUMP_FIELD_CALLBACK с информацией о члене, указанном fName. Функция обратного вызова передает структуру со сведениями о поле и значением SYM_DUMP_PARAM. контекст.

Функция обратного вызова не вызывается, если DBG_DUMP_FIELD_NO_CALLBACK_REQ задан в fOptions, fieldCallBack имеет значение NULL, или элемент параметров структуры SYM_DUMP_PARAM, переданной в Ioctl , не имеет DBG_DUMP_CALL_FOR_EACH набор. Если DBG_DUMP_FIELD_COPY_FIELD_DATA задано в fOptions, полеCallBack не используется.

pBuffer

Указывает буфер для получения значения элемента, указанного fName. Этот элемент используется только в том случае, если DBG_DUMP_FIELD_COPY_FIELD_DATA задано в fOptions.

TypeId

Получает идентификатор типа элемента, указанного fName.

FieldOffset

Получает смещение элемента в структуре.

BufferSize

Задает размер в байтах буфера pBuffer.

BitField

Получает сведения о битовых полях в структуре.

BitField.Position

Получает начальную позицию битового поля. Это число битов от начала структуры до битового поля.

BitField.Size

Получает размер битового поля в битах.

_BitField

Получает сведения о битовых полях в структуре.

fPointer

Получает логическое значение, указывающее, является ли элемент указателем. fPointer имеет значение FALSE , если элемент не является указателем. Это значение 1, если элемент является 32-разрядным указателем и 3, если элемент является 64-разрядным указателем.

fArray

Получает логическое значение, указывающее, является ли элемент массивом. fArray имеет значение FALSE , если поле не является массивом и значение TRUE , если оно имеется.

fStruct

Получает логическое значение, указывающее, является ли элемент структурой. FStruct имеет значение FALSE , если элемент не является структурой и значение TRUE , если это так.

fConstant

Получает логическое значение, указывающее, является ли элемент константой. fConstant имеет значение FALSE , если член не является константой и true , если он есть.

fStatic

Reserved

Замечания

При вызове операции IG_DUMP_SYMBOL_INFOIoctl элемент fName этой структуры должен иметь имя члена символа, к которому применяется эта структура, и элемент fOptions должен отражать требуемые функциональные возможности операции. Остальные члены являются необязательными или заполняются Ioctl.

Требования

Требование Ценность
Заголовок wdbgexts.h

См. также

DBG_DUMP_FIELD_XXX

IG_DUMP_SYMBOL_INFO

Ioctl

PSYM_DUMP_FIELD_CALLBACK