ComClassAttribute (Clase)

Actualización: noviembre 2007

El atributo ComClassAttribute indica al compilador que debe agregar metadatos que permitan exponer una clase como un objeto COM.

<System.AttributeUsage(System.AttributeTargets.Class, _
   Inherited := False, AllowMultiple := False)> _
Public NotInheritable Class ComClassAttribute
   Inherits System.Attribute

Comentarios

Use ComClassAttribute para simplificar el proceso de exposición de componentes COM desde Visual Basic .NET. Los objetos COM son muy distintos de los ensamblados .NET Framework y sin el ComClassAttribute, necesita seguir varios pasos para generar un objeto COM desde Visual Basic. Para las clases marcadas con ComClassAttribute, el compilador ejecuta muchos de estos pasos automáticamente.

Nota:

Este atributo simplifica la creación de objetos COM. Para exponer una clase como un objeto COM, deberá compilar el proyecto con la opción Registrar para interoperabilidad COM seleccionada en la sección Generar del cuadro de diálogo Propiedades de configuración.

Nota:

También puede exponer una clase creada con Visual Basic como un objeto COM para su uso en código no administrado; sin embargo, no se trata de un objeto COM auténtico. Para obtener información detallada, vea Interoperabilidad COM en aplicaciones .NET Framework.

Ejemplo

Para ejecutar este ejemplo, cree una aplicación Biblioteca de clases nueva y agregue el código siguiente a un módulo de clase.

    <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

Requisitos

Espacio de nombres:Microsoft.VisualBasic

**Ensamblado:**Visual Basic Runtime Library (en Microsoft.VisualBasic.dll)

Vea también

Tareas

Tutorial: Crear objetos COM con Visual Basic

Conceptos

Aplicar atributos de interoperabilidad

Atributos utilizados en Visual Basic

Referencia

ComClassAttribute (Miembros de clase)

VBFixedArrayAttribute (Clase)

VBFixedStringAttribute (Clase)

System.Runtime.InteropServices

Otros recursos

Atributos en Visual Basic