FIELD_INFO 结构 (wdbgexts.h)
IG_DUMP_SYMBOL_INFOIoctl 操作使用 FIELD_INFO 结构来提供有关 结构中成员的信息。
语法
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
指定此结构应用于的符号成员的名称。 可以使用分隔符“.”和“->”指定子成员。 除非在 fOptions 中设置DBG_DUMP_FIELD_FULL_NAME,否则 fName 被视为成员名称的开头。
printName
指定打印成员名称时要使用的备用名称。 如果 printName 为 NULL,则打印成员名称时使用成员的实际名称。
size
接收 由 fName 指定的成员的目标内存中的大小(以字节为单位)。
如果成员是数组, 则 size 指定数组中的元素数。
fOptions
指定确定IG_DUMP_SYMBOL_INFO Ioctl 操作行为的标志。 有关这些标志的说明,请参阅 DBG_DUMP_FIELD_XXX。
address
接收 由 fName 指定的成员的目标内存中的地址。 如果没有为 SYM_DUMP_PARAM 中的符号类型提供地址。addr, address 接收成员相对于类型实例开头的偏移量。 有关SYM_DUMP_PARAM的详细信息,请参阅 IG_DUMP_SYMBOL_INFO。
fieldCallBack
指定要使用 fName 指定的成员相关信息调用的PSYM_DUMP_FIELD_CALLBACK回调函数。 向回调函数传递结构,其中包含字段信息和值 SYM_DUMP_PARAM。上下文。
如果在 fOptions 中设置了DBG_DUMP_FIELD_NO_CALLBACK_REQ,fieldCallBack 为 NULL,或者传递给 Ioctl 的 SYM_DUMP_PARAM 结构的 Options 成员没有设置DBG_DUMP_CALL_FOR_EACH,则不会调用回调函数。 如果在 fOptions 中设置了DBG_DUMP_FIELD_COPY_FIELD_DATA,则不使用 fieldCallBack 。
pBuffer
指定一个缓冲区以接收 fName 指定的成员的值。 仅当在 fOptions 中设置了DBG_DUMP_FIELD_COPY_FIELD_DATA时,才使用此成员。
TypeId
接收 由 fName 指定的成员类型的标识符。
FieldOffset
接收 结构中成员的偏移量。
BufferSize
指定 pBuffer 缓冲区的大小(以字节为单位)。
BitField
接收有关 结构中位字段的信息。
BitField.Position
接收位字段的起始位置。 这是从 结构开始到位字段的位数。
BitField.Size
接收位字段的大小(以位为单位)。
_BitField
接收有关 结构中位字段的信息。
fPointer
接收一个布尔值,该值指示成员是否为指针。 如果成员不是指针,则 fPointer 为 FALSE。 如果成员是 32 位指针,则为 1;如果该成员为 64 位指针,则为 3。
fArray
接收一个布尔值,该值指示成员是否为数组。 如果字段不是数组,则 fArray 为 FALSE;如果字段不是数组,则为 TRUE。
fStruct
接收一个布尔值,该值指示成员是否为 结构。 如果成员不是结构,则 fStruct 为 FALSE;如果是,则为 TRUE。
fConstant
接收一个布尔值,该值指示成员是否为常量。 如果成员不是常量,fConstant 为 FALSE;如果成员不是常量,则为 TRUE。
fStatic
Reserved
注解
调用 IG_DUMP_SYMBOL_INFOIoctl 操作时,此结构的 fName 成员应设置为此结构所应用到的符号成员的名称, 并且 fOptions 成员应反映操作的所需功能。 其他成员是可选的,或者由 Ioctl 填充。
要求
要求 | 值 |
---|---|
Header | wdbgexts.h |