Conceitos da Biblioteca de Modelo Ativa (ATL)

A ATL (Active Template Library) é um conjunto de classes C++ baseadas em modelo que permite criar objetos COM (Component Object Model) pequenos e rápidos. Ela tem suporte especial para as principais funcionalidades do COM, incluindo implementações de estoque, interfaces duplas, interfaces de enumerador COM padrão, pontos de conexão, interfaces destacáveis e controles ActiveX.

Se você usa a programação da ATL com muita frequência, o ideal é saber mais sobre os atributos COM e .NET, que foram projetados para simplificar a programação COM. Para obter mais informações, confira Programação atribuída. (Os atributos COM e .NET não devem ser confundidos com a funcionalidade [[attribute]] no padrão do C++.)

Nesta seção

Introdução ao COM e à ATL
Apresenta os principais conceitos por trás do COM (Component Object Model). Este artigo explica também brevemente o que é a ATL e quando usá-la.

Princípios básicos de objetos COM da ATL
Aborda a relação entre várias classes da ATL e como essas classes são implementadas.

Interfaces duplas e a ATL
Descreve as interfaces duplas da perspectiva da ATL.

Coleções e enumeradores da ATL
Descreve a implementação e a criação de coleções e enumeradores na ATL.

Fundamentos do controle composto
Fornece instruções passo a passo para a criação de um controle composto. Um controle composto é um tipo de controle ActiveX que pode conter outros controles ActiveX ou controles do Windows.

Perguntas frequentes sobre contenção de controle da ATL
Aborda as perguntas fundamentais relacionadas à hospedagem de controles com a ATL.

Página de propriedades COM da ATL
Mostra como especificar e implementar páginas de propriedades do COM.

Suporte da ATL para controles DHTML
Fornece instruções passo a passo para a criação de um controle DHTML.

Pontos de conexão da ATL
Explica o que são pontos de conexão e como a ATL implementa-os.

Manipulação de eventos e a ATL
Descreve as etapas que você precisa executar para manipular eventos COM usando as classes IDispEventImpl e IDispEventSimpleImpl da ATL.

ATL e o marshaler livre de threads
Fornece detalhes sobre a opção do Assistente de Objeto Simples da ATL que permite que a classe agregue o FTM (marshaler livre de threads).

Como especificar o modelo de threading do projeto
Descreve as macros que estão disponíveis para controlar o desempenho em tempo de execução relacionado ao threading no projeto.

Classes de módulo da ATL
Aborda as novas classes de módulo da ATL 7.0. As classes de módulo implementam a funcionalidade básica necessária para a ATL.

Serviços da ATL
Aborda a série de eventos ocorridos quando um serviço é implementado. Também aborda alguns dos conceitos relacionados ao desenvolvimento de um serviço.

Classes de janela da ATL
Descreve como criar janelas de superclasse e subclasse na ATL. As classes de janela da ATL não são classes COM.

Classes de coleção da ATL
Descreve como usar matrizes e mapas na ATL.

Componente de Registro da ATL (Registrador)
Aborda a sintaxe de script e os parâmetros substituíveis da ATL. Ele também explica como configurar uma vinculação estática para o Registrador.

Programando com código de tempo de execução C e da ATL
Aborda os benefícios da vinculação estática ou dinâmica ao CRT (Biblioteca em Tempo de Execução C).

Programação com o CComBSTR
Aborda várias situações que exigem cuidado durante a programação com CComBSTR.

Referência de codificação
Fornece funções e macros que dão suporte à codificação de uma variedade de padrões comuns da Internet como uuencode, hexadecimal e UTF8 em atlenc.h.

Referência de utilitários
Fornece código para manipular URLs e caminhos na forma de CPathT e CUrl. Um pool de threads, CThreadPool, pode ser usado em seus próprios aplicativos. Esse código pode ser encontrado em atlpath.h e atlutil.h.

Tutorial da ATL
Explica como criar um controle e demonstra alguns conceitos básicos da ATL no processo.

Amostras da ATL
Fornece descrições de links para os programas de exemplo da ATL.

Criando um projeto ATL
Contém informações sobre o Assistente de Projeto da ATL.

Assistente de Controle da ATL
Explica como adicionar classes.

Programação atribuída
Fornece uma visão geral sobre como usar atributos para simplificar a programação COM, além de uma lista de links para tópicos mais detalhados.

Visão geral de classes da ATL
Fornece informações de referência e links para as classes da ATL.