Partilhar via


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

Ao criar novos aplicativos ou componentes, é melhor criar conjuntos do .NET Framework.No entanto, Visual Basic também facilita a expor um componente do .NET Framework para COM.Isso permite que você fornecer novos componentes anteriores aplicativo conjuntos que requerem componentes COM.Essa explicação passo a passo demonstra como usar Visual Basic para expor os objetos .NET Framework como objetos COM, com e sem o modelo classe COM.

A maneira mais fácil expor objetos COM é usando o modelo classe COM.O modelo classe COM cria uma nova classe e, em seguida, configura seu projeto para gerar a camada de classe e interoperabilidade como um objeto COM e registrá-lo com o sistema operacional.

Observação:

Embora y ou também pode expor uma classe criada no Visual Basic sistema autônomo um objeto COM para código não gerenciado usar, ele não é um objeto COM true e não pode ser usado por Visual Basic. Para obter mais informações, consulte Interoperabilidade COM em aplicativos .NET estrutura.

Observação:

As caixas de diálogo e comandos de menu demonstradas podem ser diferentes daqueles descritas na Ajuda, dependendo das configurações ativas ou configurações de edição.Para alterar as configurações, clicar Importar e exportar configurações on the Ferramentas menu.Para obter mais informações, consulte Configurações do Visual Studio.

Para criar um objeto COM, usando o modelo classe COM

  1. Abra um novo projeto aplicativos do Windows a partir do menu File,clicando em Novo Projeto .

  2. Na caixa Novo Projeto caixa de diálogo em Tipos de Projeto Campo, verifique que o Windows está selecionado.Selecione biblioteca de classes a partir de Templates Lista e em seguida, clique em OK .O novo projeto é exibido.

  3. A partir do menu Project, selecione Add New Item.A caixa de diálogo Add New Item é exibida.

  4. selecionar Classe COM from the Modelos lista e, em seguida, clicar Adicionar.Visual Basic Adiciona uma nova classe e configura o novo projeto for interoperabilidade COM.

  5. Adicione código como propriedades, métodos e eventos para o classe COM.

  6. selecionar Criar ClassLibrary1 from the Compilação menu.Visual Basic compila o assembly e registra o objeto COM o sistema operacional.

Criando objetos sem o modelo de classe COM

Você também pode criar um classe COM instead of manualmente usando o modelo classe COM.Esse procedimento é útil quando você estiver trabalhando a partir de linha de comando ou quando você deseja ter mais controle sobre Como COM objetos são definidos.

Para configurar seu projeto para gerar um objeto COM

  1. Open a new Windows Application project from the File menu by clicking NewProject.

  2. Na caixa Novo Projeto caixa de diálogo em Tipos de Projeto Campo, verifique que o Windows está selecionado.Selecione biblioteca de classes a partir de Templates Lista e em seguida, clique em OK .O novo projeto é exibido.

  3. No Solution Explorer, clique com o botão direito do mouse no nó do seu projeto e clique em Properties.O Project Designer é exibida.

  4. Clique na guia Compile.

  5. Marque a caixa de seleção Register for COM interop.

Para configurar o código em sua classe para criar um objeto COM

  1. Em Gerenciador de Soluções ,clique duas vezes em Class1.vb para exibir seu código.

  2. Renomeie a classe para ComClass1.

  3. Adicione a ComClass1 constantes a seguir.Eles armazenará as constantes (GUID) que os objetos COM são necessários para ter.

    Public Const ClassId As String = ""
    Public Const InterfaceId As String = ""
    Public Const EventsId As String = ""
    
  4. Para obter um Globally Unique Identifier (GUID), inicie o Guidgen.exe para iniciar o utilitário Guidgen.Selecione Formato do Registro a partir da lista de formatos fornecidos pelo aplicativo de Guidgen.Clique no botão Novo GUID para gerar o GUID e clique no botão Copy para copiar o GUID para a Área de transferência.

  5. Substitua a sequência de caracteres vazia para o ClassId com o GUID, removendo as chaves à esquerda e à direita.Por exemplo, se o GUID fornecido pelo Guidgen é "{2C8B0AEE-02C9-486e-B809-C780A11530FE}" Em seguida, seu código deve aparecer da seguinte maneira.

    Public Const ClassId As String = "2C8B0AEE-02C9-486e-B809-C780A11530FE"
    
  6. Repita as etapas anteriores para o InterfaceId e EventsId constantes, como no exemplo a seguir.

    Public Const InterfaceId As String = "3D8B5BA4-FB8C-5ff8-8468-11BF6BD5CF91"
    Public Const EventsId As String = "2B691787-6ED7-401e-90A4-B3B9C0360E31"
    
    Observação:

    Certifique-se de que os GUIDs são novas e exclusivas; caso contrário, o componente COM pode entrar em conflito com outros componentes COM.

  7. Adicione o atributo ComClass para ComClass1, especificando os GUIDs para a identificação de classe, interface identificação e a identificação de eventos como no exemplo a seguir:

    <ComClass(ComClass1.ClassId, ComClass1.InterfaceId, ComClass1.EventsId)> _
    Public Class ComClass1
    
  8. Classes COM devem ter um construtor Public Sub New() sem-parâmetros, ou a classe não registrará corretamente.Adicione um construtor sem-parâmetros à classe:

    Public Sub New()
        MyBase.New()
    End Sub
    
  9. Adicione propriedades, métodos e eventos à classe, terminando-lo com uma instrução End Class.selecionar Criar solução from the Compilação menu.Visual Basic compila o assembly e registra o objeto COM o sistema operacional.

    Observação:

    Os objetos COM com que gerar Visual Basic não pode ser usado por outros Visual Basic aplicativos porque não são objetos COM verdadeiras. Tenta adicionar referências a esses objetos COM irá gerar um erro.Para obter detalhes, consulte:Interoperabilidade COM em aplicativos .NET estrutura.

Consulte também

Tarefas

Demonstra Passo a passo: Implementar herança com objetos COM

Solucionando problemas de interoperabilidade

Referência

Classe ComClassAttribute

Diretiva #Region

Outros recursos

Interoperabilidade COM

Interoperabilidade COM em aplicativos .NET estrutura