CoClassAttribute Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Задает идентификатор класса coclass, импортированного из библиотеки типов.
public ref class CoClassAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Interface, Inherited=false)]
public sealed class CoClassAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.Interface, Inherited=false)]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class CoClassAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Interface, Inherited=false)>]
type CoClassAttribute = class
inherit Attribute
[<System.AttributeUsage(System.AttributeTargets.Interface, Inherited=false)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type CoClassAttribute = class
inherit Attribute
Public NotInheritable Class CoClassAttribute
Inherits Attribute
- Наследование
- Атрибуты
Комментарии
Этот атрибут можно применить к интерфейсам соклассов, хотя Tlbimp.exe (импорт библиотек типов) обычно применяется к нему при импорте библиотеки типов.
Когда Tlbimp.exe импортирует сокласс, он создает управляемый класс и интерфейс для представления сокласса. Интерфейс coclass имеет тот же идентификатор интерфейса (IID), что и интерфейс по умолчанию исходного coclass. Импортированный интерфейс coclass также сохраняет имя сокласса. Tlbimp.exe добавляет исходное имя сокласса с "классом", чтобы определить импортированный класс.
Этот атрибут редко применяется. Однако если вы планируете написать исходный код, который создает метаданные, которые тесно имитируют метаданные, созданные Tlbimp.exe, необходимо создать интерфейс сокласса для каждого сокласса. Используйте имя исходного сокласса, чтобы назвать интерфейс сокласса и наследовать его из интерфейса по умолчанию. CoClassAttributeПомимо этого, необходимо также применить System.Runtime.InteropServices.ComImportAttribute атрибуты и System.Runtime.InteropServices.GuidAttribute атрибуты к интерфейсу сокласса. Дополнительные сведения о том, как Tlbimp.exe импортирует интерфейсы и соклассы из библиотеки типов, см. в разделе "Импортированное преобразование типов").
Конструкторы
| Имя | Описание |
|---|---|
| CoClassAttribute(Type) |
Инициализирует новый экземпляр CoClassAttribute с идентификатором класса исходного сокласса. |
Свойства
| Имя | Описание |
|---|---|
| CoClass |
Возвращает идентификатор класса исходного coclass. |
| TypeId |
При реализации в производном классе получает уникальный идентификатор для этого Attribute. (Унаследовано от Attribute) |
Методы
| Имя | Описание |
|---|---|
| Equals(Object) |
Возвращает значение, указывающее, равен ли этот экземпляр указанному объекту. (Унаследовано от Attribute) |
| GetHashCode() |
Возвращает хэш-код для этого экземпляра. (Унаследовано от Attribute) |
| GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
| IsDefaultAttribute() |
При переопределении в производном классе указывает, является ли значение этого экземпляра значением по умолчанию для производного класса. (Унаследовано от Attribute) |
| Match(Object) |
При переопределении в производном классе возвращает значение, указывающее, равен ли этот экземпляр указанному объекту. (Унаследовано от Attribute) |
| MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
| ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
Явные реализации интерфейса
| Имя | Описание |
|---|---|
| _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Сопоставляет набор имен соответствующему набору идентификаторов диспетчеризации. (Унаследовано от Attribute) |
| _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Извлекает сведения о типе объекта, который можно использовать для получения сведений о типе для интерфейса. (Унаследовано от Attribute) |
| _Attribute.GetTypeInfoCount(UInt32) |
Возвращает количество предоставляемых объектом интерфейсов для доступа к сведениям о типе (0 или 1). (Унаследовано от Attribute) |
| _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Предоставляет доступ к свойствам и методам, предоставляемым объектом. (Унаследовано от Attribute) |