Partilhar via


Adicionando uma interface ao provedor

Determine objeto que você deseja adicionar a interface (normalmente fonte de dados, conjunto de linhas, comando, ou objetos de sessão criados pelo assistente do provedor OLE DB). É possível que o objeto que você precisa adicionar a interface é uma que o provedor não oferecer suporte a. Nesse caso, execute o assistente do provedor OLE DB de ATL para criar o objeto. Clique com o botão direito do mouse na exibição da classe Adicionar Classe , clique no menu de Adicionar , e clique em ATL OLE DB Provider. Talvez você queira colocar o código de interface em um diretório separado e para copiar os arquivos em seu provedor do projeto.

Se você criou uma nova classe para dar suporte à interface, faça o objeto ser herdada da classe. Por exemplo, você pode adicionar a classe IRowsetIndexImpl a um objeto de conjunto de linhas:

template <class Creator>
class CAgentRowset : 
public CRowsetImpl< CAgentRowset<Creator>, CAgentMan, Creator>,
   public IRowsetIndexImpl< ... > 

Adicionar à interface COM_MAP no objeto usando a macro de COM_INTERFACE_ENTRY. Se não houver nenhum mapa, crie um. Por exemplo:

BEGIN_COM_MAP(CAgentRowset)
     COM_INTERFACE_ENTRY(IRowsetIndex)
END_COM_MAP()

Para o objeto de conjunto de linhas, o encadeamento o mapa do seu objeto pai de forma que o objeto pode delegar a classe pai. Neste exemplo, adicione a macro de COM_INTERFACE_ENTRY_CHAIN ao mapa:

BEGIN_COM_MAP(CAgentRowset)
     COM_INTERFACE_ENTRY(IRowsetIndex)
     COM_INTERFACE_ENTRY_CHAIN(CRowsetImpl)
END_COM_MAP()

Consulte também

Conceitos

Trabalhando com modelos de provedor de banco de dados OLE