ComClassAttribute Класс

Определение

Атрибут ComClassAttribute указывает компилятору добавить метаданные, позволяющие классу предоставляться в виде COM-объекта.

public ref class ComClassAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=false, Inherited=false)]
public sealed class ComClassAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=false, Inherited=false)>]
type ComClassAttribute = class
    inherit Attribute
Public NotInheritable Class ComClassAttribute
Inherits Attribute
Наследование
ComClassAttribute
Атрибуты

Примеры

Чтобы запустить этот пример, создайте приложение библиотеки классов и добавьте следующий код в модуль класса.

    <ComClass(ComClass1.ClassId, ComClass1.InterfaceId, ComClass1.EventsId)>
    Public Class ComClass1
        ' Use the Region directive to define a section named COM Guids. 
#Region "COM GUIDs"
        ' These  GUIDs provide the COM identity for this class 
        ' and its COM interfaces. You can generate 
        ' these guids using guidgen.exe
        Public Const ClassId As String = "7666AC25-855F-4534-BC55-27BF09D49D46"
        Public Const InterfaceId As String = "54388137-8A76-491e-AA3A-853E23AC1217"
        Public Const EventsId As String = "EA329A13-16A0-478d-B41F-47583A761FF2"
#End Region

        Public Sub New()
            MyBase.New()
        End Sub

        Function AddNumbers(ByVal X As Integer, ByVal Y As Integer)
            AddNumbers = X + Y
        End Function
    End Class

Комментарии

Используйте ComClassAttribute, чтобы упростить процесс предоставления com-компонентов из Visual Basic. COM-объекты отличаются от сборок .NET Framework. Без ComClassAttribute необходимо выполнить ряд шагов для создания COM-объекта из Visual Basic. Для классов, помеченных как ComClassAttribute", компилятор выполняет многие из этих действий автоматически.

Note

Этот атрибут упрощает создание COM-объектов. Чтобы предоставить класс в виде COM-объекта, необходимо скомпилировать проект с параметром Register for COM Interop , выбранным в разделе "Сборка " диалогового окна "Свойства конфигурации ".

Note

Несмотря на то что вы также можете предоставить класс, созданный с помощью Visual Basic в качестве COM-объекта для использования неуправляемого кода, это не истинный COM-объект. Дополнительные сведения см. в разделе "Взаимодействие COM" в приложениях .NET Framework.

Конструкторы

Имя Описание
ComClassAttribute()

Инициализирует новый экземпляр класса ComClassAttribute.

ComClassAttribute(String, String, String)

Инициализирует новый экземпляр класса ComClassAttribute.

ComClassAttribute(String, String)

Инициализирует новый экземпляр класса ComClassAttribute.

ComClassAttribute(String)

Инициализирует новый экземпляр класса ComClassAttribute.

Свойства

Имя Описание
ClassID

Возвращает идентификатор класса, используемый для уникальной идентификации класса.

EventID

Возвращает идентификатор события, используемый для уникальной идентификации события.

InterfaceID

Возвращает идентификатор интерфейса, используемый для уникальной идентификации интерфейса.

InterfaceShadows

Указывает, что имя COM-интерфейса тени другого члена класса или базового класса.

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)

Применяется к

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