IMetaDataImport 接口

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

Methods

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

Remarks

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

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

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

  • 获取指定项的属性。

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

Requirements

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

页眉: Cor.h

图书馆: CorGuids.lib

另请参阅