Adicionando uma nova Interface em um projeto da ATL
Ao adicionar uma interface ao seu objeto ou controle, você cria funções sem stub para cada método nessa interface. Em seu objeto ou controle, você pode adicionar somente interfaces encontradas atualmente em uma biblioteca de tipos existente. Além disso, a classe na qual você adiciona a interface deve implementar a macro BEGIN_COM_MAP ou, se o projeto for atribuído, ele deverá ter o atributo coclass
.
Você pode adicionar uma nova interface ao controle de duas maneiras: manualmente ou usando assistentes de código no Modo de Exibição de Classe.
Para usar assistentes de código no Modo de Exibição de Classe para adicionar uma interface a um objeto ou controle existente
No Modo de Exibição de Classe, clique com o botão direito do mouse no nome de classe de um controle. Por exemplo, um controle completo ou controle composto ou qualquer outra classe de controle que implemente uma macro BEGIN_COM_MAP em seu arquivo de cabeçalho.
No menu de atalho, clique em Adicionar e em Implementar Interface.
Selecione as interfaces a serem implementadas no Assistente para Implementar Interface. Se a interface não existir em nenhuma typelib disponível, você deverá adicioná-la manualmente ao arquivo .idl.
Para adicionar uma nova interface manualmente
Adicione a definição da nova interface ao arquivo .idl.
Derive seu objeto ou controle da interface.
Crie um novo COM_INTERFACE_ENTRY para a interface ou, se o projeto for atribuído, adicione o atributo
coclass
.Implemente métodos na interface.
Confira também
Assistente de Projeto da ATL
Tipos de projeto do C++ no Visual Studio
Programando com código de tempo de execução C e da ATL
Princípios básicos de objetos COM da ATL
Configurações de projeto padrão da ATL