IMetaDataImport Interface

提供用于从可移植可执行文件(PE)文件或其他源(如类型库或独立运行时元数据二进制文件)导入和操作现有元数据的方法。

Methods

Method Description
CloseEnum Method 关闭具有指定句柄的枚举器。
CountEnum Method 获取具有指定句柄的枚举器中的元素数。
EnumCustomAttributes Method 枚举与指定类型或成员关联的自定义属性定义令牌的列表。
EnumEvents Method 枚举指定 TypeDef 令牌的事件定义令牌。
EnumFields Method 为指定的 TypeDef 标记引用的类型枚举 FieldDef 标记。
EnumFieldsWithName Method 枚举具有指定名称的指定类型的 FieldDef 标记。
EnumInterfaceImpls Method 枚举表示接口实现的 MethodDef 令牌。
EnumMemberRefs Method 枚举表示指定类型的成员的 MemberRef 令牌。
EnumMembers Method 枚举表示指定类型的成员的 MemberDef 标记。
EnumMembersWithName Method 枚举表示具有指定名称的指定类型的成员的 MemberDef 标记。
EnumMethodImpls Method 枚举表示指定类型的方法的 MethodBody 和 MethodDeclaration 标记。
EnumMethods Method 枚举表示指定类型的方法的 MethodDef 标记。
EnumMethodSemantics Method 枚举与指定方法相关的属性和属性更改事件。
EnumMethodsWithName Method 枚举具有指定名称且由指定 TypeDef 标记引用的类型定义的方法。
EnumModuleRefs Method 枚举表示导入的模块的 ModuleRef 令牌。
EnumParams Method 枚举表示指定 MethodDef 标记引用的方法的参数的 ParamDef 标记。
EnumPermissionSets Method 枚举指定元数据范围内对象的权限。
EnumProperties Method 枚举表示由指定 TypeDef 标记引用的类型的属性的 PropertyDef 标记。
EnumSignatures Method 枚举表示当前作用域中独立签名的签名令牌。
EnumTypeDefs Method 枚举表示当前范围内所有类型的 TypeDef 令牌。
EnumTypeRefs Method 枚举当前元数据范围中定义的 TypeRef 令牌。
EnumTypeSpecs Method 枚举当前元数据范围中定义的 TypeSpec 令牌。
EnumUnresolvedMethods Method 枚举表示当前元数据作用域中未解析的方法的 MemberDef 令牌。
EnumUserStrings Method 枚举表示当前元数据作用域中硬编码字符串的字符串标记。
FindField Method 获取作为指定类型成员的字段的 FieldDef 标记,并具有指定的名称和元数据签名。
FindMember Method 获取指向由具有指定名称和元数据签名的指定类型定义的成员的 MemberDef 令牌的指针。
FindMemberRef Method 获取指向由具有指定名称和元数据签名的指定类型定义的成员的 MemberRef 标记的指针。
FindMethod Method 获取指向具有指定名称和元数据签名的指定类型定义的方法的 MethodDef 标记的指针。
FindTypeDefByName Method 获取指向具有指定名称的类型的 TypeDef 元数据标记的指针。
FindTypeRef Method 获取指向 TypeRef 元数据标记的指针,该标记引用具有指定名称的指定搜索范围中的类型。
GetClassLayout Method 获取由指定 TypeDef 标记引用的类的布局信息。
GetCustomAttributeByName Method 获取自定义特性的值,给定其名称。
GetCustomAttributeProps Method 获取自定义特性的值,给定其元数据标记。
GetEventProps Method 获取元数据信息(包括声明类型、委托的添加和删除方法以及由指定事件令牌表示的任何标志和其他关联数据)。
GetFieldMarshal Method 获取指向由指定字段元数据标记表示的字段的本机非托管类型的指针。
GetFieldProps Method 获取与指定的 FieldDef 标记引用的字段关联的元数据。
GetInterfaceImplProps Method 获取指向实现指定方法的类型和声明该方法的接口的元数据标记的指针。
GetMemberProps Method 获取由指定元数据令牌引用的类型成员的元数据信息(包括名称、二进制签名和相对虚拟地址)。
GetMemberRefProps Method 获取与指定令牌引用的成员关联的元数据。
GetMethodProps Method 获取与指定 MethodDef 标记引用的方法关联的元数据。
GetMethodSemantics Method 获取指向指定 MethodDef 标记引用的方法与指定的 EventProp 标记所引用的配对属性和事件之间的关系的指针。
GetModuleFromScope Method 获取指向当前元数据范围中引用的模块的元数据令牌的指针。
GetModuleRefProps Method 获取由指定元数据令牌引用的模块的名称。
GetNameFromToken Method 获取由指定元数据令牌引用的对象 UTF-8 名称。
GetNativeCallConvFromSig Method 获取由指定签名指针表示的方法的本机调用约定。
GetNestedClassProps Method 获取指定嵌套类型的封闭父类型的 TypeDef 标记。
GetParamForMethodIndex Method 获取指向表示指定 MethodDef 标记所表示的方法的方法参数序列中指定序号位置的参数的标记的指针。
GetParamProps Method 获取指定 ParamDef 标记引用的参数的元数据值。
GetPermissionSetProps Method 获取与由指定权限令牌表示的 System.Security.PermissionSet 关联的元数据。
GetPinvokeMap 获取一个 ModuleRef 令牌,用于表示 PInvoke 调用的目标程序集。
GetPropertyProps Method 获取与由指定标记表示的属性关联的元数据。
GetRVA Method 获取由指定标记表示的代码对象的相对虚拟地址的偏移量。
GetScopeProps Method 获取当前元数据范围内程序集或模块的版本标识符和可选名称。
GetSigFromToken Method 获取与指定令牌关联的二进制元数据签名。
GetTypeDefProps Method 返回由指定 TypeDef 标记表示的类型的元数据信息。
GetTypeRefProps Method 获取与指定的 TypeRef 标记引用的类型关联的元数据。
GetTypeSpecFromToken Method 获取由指定标记表示的类型规范的二进制元数据签名。
GetUserString Method 获取由指定的元数据标记表示的文本字符串。
IsGlobal Method 获取一个值,该值指示指定的元数据令牌所表示的字段、方法或类型是否具有全局范围。
IsValidToken Method 获取一个值,该值指示指定的令牌是否保存对代码对象的有效引用。
ResetEnum Method 将指定的枚举器重置为指定位置。
ResolveTypeRef Method 获取指定 TypeRef 标记引用的类型的类型信息。

Remarks

接口的设计 IMetaDataImport 主要供将导入类型信息(例如开发工具)或管理已部署的组件(例如解析/激活服务)的工具和服务使用。 IMetaDataImport方法分为以下任务类别:

  • 枚举元数据范围内项的集合。

  • 查找具有特定特征集的项。

  • 获取指定项的属性。

  • Get 方法专门用于返回元数据项的单值属性。 当属性是对另一项的引用时,将返回该项目的标记。 任何指针输入类型都可以为 NULL,以指示未请求特定值。 若要获取本质上是集合对象的属性(例如,类实现的接口集合),请使用枚举方法。

Requirements

平台: 请参阅 .NET 支持的作系统

Header: Cor.h

Library: CorGuids.lib

See also