Partes de um aplicativo COM+
Os aplicativos COM+ consistem em um ou mais componentes COM.
Os seguintes termos são usados em toda a documentação COM+:
-
Componente COM
-
Uma unidade binária de código que cria objetos COM (inclui código de empacotamento e registro).
-
Objeto COM
-
Uma instância de uma classe COM.
-
Classe COM
-
Uma implementação nomeada e concreta de uma ou mais interfaces. Uma classe COM é identificada por um CLSID (às vezes por um ProgID também).
-
Interface COM
-
Um grupo de funções de método relacionadas expostas por uma classe COM que especificam um contrato. Isso inclui o nome, a assinatura da interface, a semântica da interface e o formato do buffer de empacotamento. Uma interface é identificada por um IID. A sintaxe da interface é definida em IDL e/ou bibliotecas de tipos. As interfaces de uma classe COM devem ser divididas em conjuntos de métodos gerenciáveis e coesos.
As interfaces COM são imutáveis; o contrato COM estabelece que não podem ser modificados. Qualquer modificação (como adicionar métodos) requer a definição de uma nova interface.
-
Método COM
-
Uma de um conjunto de funções relacionadas fornecidas por uma interface COM.
Componentes configurados e não configurados
Para aproveitar os serviços que os aplicativos COM+ suportam, o ambiente COM+ impõe requisitos específicos aos componentes COM criados para aplicativos COM+. Quando adicionado a um aplicativo COM+, um componente COM é conhecido como um componente configurado.
Os componentes COM criados para aplicativos COM+ são componentes de servidor em processo. O componente deve conter uma biblioteca de tipos (arquivo .tlb) para descrever todas as classes implementadas no componente e declarar as interfaces em todas as classes no componente. Você pode criar e implementar esses componentes com o Microsoft Visual Basic, Microsoft Visual C++ ou qualquer ferramenta de desenvolvimento compatível com COM.
Um componente não configurado é um componente que não está instalado em um aplicativo COM+. Você pode transformar a maioria dos componentes não configurados em componentes configurados simplesmente integrando-os em um aplicativo COM+.
Observação
Não use o mesmo AppID para um aplicativo COM+ e no Registro para um componente não configurado. Quando o componente não configurado é ativado , como a ativação pode recuperar as informações do aplicativo COM+ do registro que não contém as informações necessárias para a ativação COM. Problemas semelhantes podem surgir se uma chamada for feita para CoRegisterClassObject de DllHost que hospeda o aplicativo COM + Server.