DacpFieldDescData 结构

定义 FieldDesc 信息的传输缓冲区。

Note

此 API 最初旨在供运行时内部使用。 尽管现在支持第三方使用,但我们建议尽量使用 ICorDebugICorProfiler API。

Syntax

struct DacpFieldDescData : ZeroInit<DacpFieldDescData>
{
    CorElementType Type;
    CorElementType sigType;     // ELEMENT_TYPE_XXX from signature. We need this to display pretty name for String in minidump's case
    CLRDATA_ADDRESS MTOfType; // NULL if Type is not loaded
    
    CLRDATA_ADDRESS ModuleOfType;
    mdTypeDef TokenOfType;
    
    mdFieldDef mb;
    CLRDATA_ADDRESS MTOfEnclosingClass;
    DWORD dwOffset;
    BOOL bIsThreadLocal;
    BOOL bIsContextLocal;
    BOOL bIsStatic;
    CLRDATA_ADDRESS NextField;

    HRESULT Request(ISOSDacInterface *sos, CLRDATA_ADDRESS addr)
    {
        return sos->GetFieldDescData(addr, this);
    }
};

Members

成员 说明
Type 字段类型。
sigType ELEMENT_TYPE_XXX字段签名中的值。 运行时使用此成员在小型转储方案中显示友好名称 String
MTOfType 字段类型的方法表的地址,或者 NULL 未加载该类型。
ModuleOfType 包含字段类型的模块的地址。
TokenOfType 字段类型的元数据令牌。
mb 字段的元数据标记。
MTOfEnclosingClass 封闭类的方法表的地址。
dwOffset 字段偏移量。
bIsThreadLocal 一个值,该值指示字段是否为本地线程。
bIsContextLocal 一个值,该值指示字段是否为本地上下文。
bIsStatic 一个值,该值指示字段是否为静态字段。
NextField 下一个字段的地址。
Request 通过调用 ISOSDacInterface::GetFieldDescData从 FieldDesc 地址填充结构。

Remarks

此结构位于运行时内,不会通过任何标头或库文件公开。 若要使用它,请定义上面指定的结构。

要求

平台:请参阅系统要求
页眉: 没有
图书馆: 没有
.NET Framework 版本:自 4.7 起可用

另见