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


Интерфейс IMetaDataImport

Предоставляет методы для импорта существующих метаданных из переносимого исполняемого (PE) файла или другого источника, такого как библиотека типов или отдельный двоичный файл метаданных среды выполнения, а также управления этим метаданными.

Методы

Метод Описание
Метод CloseEnum Закрывает перечислитель с указанным дескриптором.
Метод CountEnum Возвращает число элементов в перечислителе с указанным дескриптором.
Метод EnumCustomAttributes Перечисляет список токенов определений настраиваемых атрибутов, связанных с указанным типом или членом.
Метод EnumEvents Перечисляет токены определений событий для указанного токена TypeDef.
Метод EnumFields Перечисляет токены FieldDef для типа, на который ссылается указанный токен TypeDef.
Метод EnumFieldsWithName Перечисляет токены FieldDef заданного типа с указанным именем.
Метод EnumInterfaceImpls Перечисляет токены MethodDef, представляющие реализации интерфейса.
Метод EnumMemberRefs Перечисляет токены MemberRef, представляющие члены указанного типа.
Метод EnumMembers Перечисляет токены MemberDef, представляющие члены указанного типа.
Метод EnumMembersWithName Перечисляет токены MemberDef, представляющие члены указанного типа с заданным именем.
Метод EnumMethodImpls Перечисляет токены MethodBody и MethodDeclaration, представляющие методы указанного типа.
Метод EnumMethods Перечисляет токены MethodDef, представляющие методы указанного типа.
Метод EnumMethodSemantics Перечисляет свойства и события их изменения, с которыми связан указанный метод.
Метод EnumMethodsWithName Перечисляет методы с заданным именем, определяемые по типу, на который ссылается указанный токен TypeDef.
Метод EnumModuleRefs Перечисляет токены ModuleRef, представляющие импортируемые модули.
Метод EnumParams Перечисляет токены ParamDef, представляющие параметры метода, на который ссылается указанный токен MethodDef.
Метод EnumPermissionSets Перечисляет разрешения для объектов в указанной области метаданных.
Метод EnumProperties Перечисляет токены PropertyDef, представляющие свойства типа, на который ссылается указанный токен TypeDef.
Метод EnumSignatures Перечисляет токены Signature, представляющие отдельные подписи в текущей области.
Метод EnumTypeDefs Перечисляет токены TypeDef, представляющие все типы в текущей области.
Метод EnumTypeRefs Перечисляет токены TypeRef, определенные в текущей области метаданных.
Метод EnumTypeSpecs Перечисляет токены TypeSpec, определенные в текущей области метаданных.
Метод EnumUnresolvedMethods Перечисляет токены MemberDef, представляющие неразрешенные методы в текущей области метаданных.
Метод EnumUserStrings Перечисляет токены String, представляющие жестко заданные строки в текущей области метаданных.
Метод FindField Возвращает токен FieldDef для поля, являющегося членом заданного типа и обладающего указанными именем и подписью метаданных.
Метод FindMember Возвращает указатель на токен MemberDef для члена, определенного заданным типом, с указанными именем и подписью метаданных.
Метод FindMemberRef Возвращает указатель на токен MemberRef для члена, определенного заданным типом, с указанными именем и подписью метаданных.
Метод FindMethod Возвращает указатель на токен MethodDef для метода, определенного заданным типом, с указанными именем и подписью метаданных.
Метод FindTypeDefByName Возвращает указатель на токен метаданных TypeDef для типа с указанным именем.
Метод FindTypeRef Возвращает указатель на токен метаданных TypeRef, который ссылается на тип в заданной области поиска с указанным именем.
Метод GetClassLayout Возвращает сведения о структуре для класса, на который ссылается указанный токен TypeDef.
Метод GetCustomAttributeByName Возвращает значение настраиваемого атрибута по указанному имени.
Метод GetCustomAttributeProps Возвращает значение пользовательского атрибута по указанному токену метаданных.
Метод GetEventProps Возвращает сведения о метаданных (включая объявленный тип, методы добавления и удаления для делегатов, а также всевозможные флаги и другие связанные с ними данные) для события, представленного указанным токеном события.
Метод GetFieldMarshal Возвращает указатель на машинный неуправляемый тип поля, представленного заданным токеном метаданных Field.
Метод 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, который представлен указанным токеном Permission.
Метод GetPinvokeMap Возвращает токен ModuleRef, представляющий целевую сборку вызова PInvoke.
Метод GetPropertyProps Возвращает метаданные, связанные со свойством, представленным указанным токеном.
Метод GetRVA Возвращает смещение относительного виртуального адреса объекта кода, представленного указанным токеном.
Метод GetScopeProps Возвращает имя и при необходимости идентификатор версии сборки или модуля в текущей области метаданных.
Метод GetSigFromToken Возвращает двоичную подпись метаданных, связанную с указанным токеном.
Метод GetTypeDefProps Возвращает сведения о метаданных для типа, представленного указанным токеном TypeDef.
Метод GetTypeRefProps Возвращает метаданные, связанные с типом, на который ссылается указанный токен TypeRef.
Метод GetTypeSpecFromToken Возвращает двоичную подпись метаданных для спецификации типа, представленного указанным токеном.
Метод GetUserString Получает строку литералов, представленную указанным токеном метаданных.
Метод IsGlobal Возвращает значение, указывающее на наличие глобальной области у поля, метода или типа, представленного заданным токеном метаданных.
Метод IsValidToken Возвращает значение, указывающее, содержится ли в заданном токене допустимая ссылка на объект кода.
Метод ResetEnum Возвращает заданный перечислитель в указанную позицию.
Метод ResolveTypeRef Возвращает сведения о типе, на который ссылается указанный токен TypeRef.

Комментарии

По своей структуре интерфейс IMetaDataImport предназначен в первую очередь для использования средствами и службами, которые будут импортировать сведения о типах (например, средства разработки) или управлять компонентами развертывания (например, службы разрешения или активации). Методы интерфейса IMetaDataImport делятся по задачам на следующие категории:

  • перечисление коллекций элементов в области метаданных;

  • поиск элементов с определенным набором характеристик;

  • получение свойств указанного элемента;

  • методы Get предназначены специально для возврата свойств с одним значением для элемента метаданных. Если свойство ссылается на другой элемент, возвращается токен этого элемента. Любой тип ввода указателя может иметь значение NULL, свидетельствующее о том, что определенное значение не запрашивается. Для получения свойств, которые по сути являются объектами коллекции (например, коллекции интерфейсов, реализуемых классом), используются методы перечисления.

Требования

Платформы: см. раздел Требования к системе.

Заголовка: Cor.h

Библиотека: Используется в качестве ресурса в MsCorEE.dll

платформа .NET Framework версии: доступно с версии 1.0.

См. также раздел