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


Интерфейс IMetaDataImport

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

Methods

Method Description
Метод 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 Перечисляет маркеры подписи, представляющие автономные подписи в текущей области.
Метод 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

См. также