Partilhar via


Classes de módulo ATL

Observação

A Active Template Library (ATL) continua a ser suportada. No entanto, já não estamos a adicionar funcionalidades nem a atualizar a documentação.

Este tópico discute as classes de módulo que eram novas no ATL 7.0.

Classes de substituição CComModule

Versões anteriores do ATL usavam CComModule. No ATL 7.0, CComModule a funcionalidade é substituída por várias classes:

  • CAtlBaseModule Contém informações exigidas pela maioria dos aplicativos que usam ATL. Contém o HINSTANCE do módulo e a instância do recurso.

  • CAtlComModule Contém informações exigidas pelas classes COM em ATL.

  • CAtlWinModule Contém informações exigidas pelas classes de janela no ATL.

  • CAtlDebugInterfacesModule Contém suporte para depuração de interfaces.

  • CAtlModule As classes derivadas a seguir CAtlModulesão personalizadas para conter informações necessárias em um tipo de aplicativo específico. A maioria dos membros nestas classes pode ser substituída:

    • CAtlDllModuleT Usado em aplicativos DLL. Fornece código para as exportações padrão.

    • CAtlExeModuleT Usado em aplicativos EXE. Fornece o código necessário em um EXE.

    • CAtlServiceModuleT Fornece suporte para criar Windows NT e Windows 2000 Services.

CComModule ainda está disponível para compatibilidade com versões anteriores.

Razões para distribuir a funcionalidade CComModule

A funcionalidade de CComModule foi distribuída em várias novas classes pelos seguintes motivos:

  • Torne a funcionalidade em CComModule granular.

    O suporte para COM, janelas, depuração de interface e recursos específicos do aplicativo (DLL ou EXE) agora está em classes separadas.

  • Declare automaticamente a instância global de cada um desses módulos.

    Uma instância global das classes de módulo necessárias está vinculada ao projeto.

  • Remova a necessidade de chamar os métodos Init e Term.

    Os métodos Init e Term foram movidos para os construtores e os destrutores das classes de módulo; não há mais necessidade de chamar Init e Term.

Ver também

Conceitos
Visão geral da classe