Compartilhar via


Classe ComClassAttribute

O atributo ComClassAttribute instrui o compilador a adicionar metadados que permitem que a classe seja exposta como um objeto COM.

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

Comentários

Use ComClassAttribute para simplificar o processo de expor componentes COM do Visual Basic.Objetos COM sÃo muito diferentes das montagens do Framework .NET; sem o atributo ComClassAttribute, você precisa seguir um certo número de passos para gerar um objeto COM do Visual Basic.Para classes marcadas com ComClassAttribute, o compilador executa muitos desses passos automaticamente.

Observação:

Este atributo simplifica a criação de objetos COM.Para expor uma classe sistema autônomo um objeto COM, você deve compilar o projeto com o Registrar para interoperabilidade com. opção selecionada no Compilação o seçãoPropriedades de configuração caixa de diálogo.

Observação:

Apesar de você poder expor uma classe criada com o Visual Basic como um objeto COM para código não gerenciado, ele não é um objeto COM verdadeiro.Para obter detalhes, consulte Interoperabilidade COM em aplicativos .NET estrutura.

Exemplo

Para executar este exemplo, crie um novo aplicativoBiblioteca de Classes e adicione o código a seguir a um módulo de classe.

    <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

Namespace:Microsoft.VisualBasic

Assembly: Visual Basic Runtime Library (em Microsoft.VisualBasic.dll)

Consulte também

Tarefas

Demonstra Passo a passo: Criando objetos COM com o Visual Basic

Conceitos

Aplicar atributos de interoperabilidade

Atributos usados no Visual Basic

Referência

Membros de Classe ComClassAttribute

Classe VBFixedArrayAttribute

Classe VBFixedStringAttribute

System.Runtime.InteropServices

Outros recursos

Atributos no Visual Basic