Compartilhar via


Criando o projeto (Tutorial ATL, parte 1)

Este tutorial orienta você passo a passo por meio de um projeto da ATL não atribuído que cria um objeto ActiveX que exibe um polígono. O objeto inclui opções para permitir que o usuário altere o número de lados que compõem o polígono e o código para atualizar a exibição.

Observação

Este tutorial cria o mesmo código-fonte que o exemplo do polígono. Se você quiser evitar inserir o código-fonte manualmente, poderá baixá-lo do resumo de exemplo do polígono. Em seguida, você pode consultar o código-fonte do polígono enquanto trabalha no tutorial ou usá-lo para verificar se há erros em seu próprio projeto. Para compilar, abra pch.h (stdafx.h no Visual Studio 2017 e versões anteriores) e substitua:

#ifndef WINVER
#define WINVER 0x0400
#endif

por

#ifndef WINVER
#define WINVER 0x0500
#define _WIN32_WINNT 0x0500
#endif

O compilador ainda reclamará de regsvr32 não sair corretamente, mas você deverá ter a DLL do controle criada e disponível para uso.

Para criar um projeto da ATL inicial usando o Assistente de Projeto da ATL

  1. No Visual Studio 2017 e versões anteriores: Arquivo>Novo>Projeto. Abra a guia Visual C++ e selecione MFC/ATL. Selecione Projeto da ATL.

    No Visual Studio 2019: escolha Arquivo>Novo>Projeto, digite "atl" na caixa de pesquisa e escolha Projeto da ATL.

  2. Digite Polígono como o nome do projeto.

    O local do código-fonte geralmente será padrão para \Users\<username>\source\repos, e uma nova pasta será criada automaticamente.

  3. No Visual Studio 2019, aceite os valores padrão e clique em OK. No Visual Studio 2017, clique em OK para abrir o assistente do Projeto da ATL. Clique em Configurações de Aplicativo para ver as opções disponíveis. Como esse projeto cria um controle e um controle deve ser um servidor em processo, deixe o tipo de aplicativo como uma DLL. Clique em OK.

O Visual Studio criará o projeto gerando vários arquivos. Você pode exibir esses arquivos em Gerenciador de Soluções expandindo o objeto Polygon. Os valores são listados abaixo.

Arquivo Descrição
Polygon.cpp Contém a implementação de DllMain, DllCanUnloadNow, DllGetClassObject, DllRegisterServer e DllUnregisterServer. Também contém o mapa de objetos, que é uma lista dos objetos da ATL em seu projeto. É definido inicialmente como em branco.
Polygon.def Este arquivo de definição de módulo fornece ao vinculador informações sobre as exportações exigidas por sua DLL.
Polygon.idl O arquivo de linguagem IDL, que descreve as interfaces específicas de seus objetos.
Polygon.rgs Esse script do Registro contém informações para registrar a DLL do programa.
Polygon.rc O arquivo de recurso, que inicialmente contém as informações de versão e uma cadeia de caracteres que contém o nome do projeto.
Resource.h O arquivo de cabeçalho do arquivo de recurso.
Polygonps.def Este arquivo de definição de módulo fornece ao vinculador informações sobre as exportações exigidas pelo código proxy e stub que dão suporte a chamadas em apartments.
stdafx.cpp O arquivo que será #include stdafx.h.
stdafx.h O arquivo que vai #include e pré-compilar os arquivos de cabeçalho da ATL.
Arquivo Descrição
Polygon.cpp Contém a implementação de DllMain, DllCanUnloadNow, DllGetClassObject, DllRegisterServer e DllUnregisterServer. Também contém o mapa de objetos, que é uma lista dos objetos da ATL em seu projeto. É definido inicialmente como em branco.
Polygon.def Este arquivo de definição de módulo fornece ao vinculador informações sobre as exportações exigidas por sua DLL.
Polygon.idl O arquivo de linguagem IDL, que descreve as interfaces específicas de seus objetos.
Polygon.rgs Esse script do Registro contém informações para registrar a DLL do programa.
Polygon.rc O arquivo de recurso, que inicialmente contém as informações de versão e uma cadeia de caracteres que contém o nome do projeto.
Resource.h O arquivo de cabeçalho do arquivo de recurso.
Polygonps.def Este arquivo de definição de módulo fornece ao vinculador informações sobre as exportações exigidas pelo código proxy e stub que dão suporte a chamadas em apartments.
pch.cpp O arquivo que #include pch.h.
pch.h O arquivo que vai #include e pré-compilar os arquivos de cabeçalho da ATL.
  1. No Gerenciador de Soluções, clique com o botão direito do mouse no projeto Polygon.

  2. No menu de atalho, clique em Propriedades.

  3. Clique no Vinculador. Altere a opção Per-UserRedirection para Sim.

  4. Clique em OK.

Na próxima etapa, você adicionará um controle ao seu projeto.

Na etapa 2

Confira também

Tutorial