Поделиться через


Создание проекта (учебник ATL, часть 1)

В этом руководстве пошаговые инструкции описаны пошаговые инструкции по проекту ATL, который создает объект ActiveX, отображающий многоугольник. Объект включает параметры, позволяющие пользователю изменять количество сторон, составляющих многоугольник, и код для обновления дисплея.

Примечание.

В этом руководстве создается тот же исходный код, что и пример Polygon. Если вы хотите избежать ввода исходного кода вручную, его можно скачать из примера Polygon. Затем вы можете ссылаться на исходный код Polygon, как вы работаете с руководством, или использовать его для проверки ошибок в собственном проекте. Чтобы выполнить компиляцию, откройте pch.h (stdafx.h в Visual Studio 2017 и более ранних версиях) и замените следующее:

#ifndef WINVER
#define WINVER 0x0400
#endif

на

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

Компилятор по-прежнему жалуется на regsvr32 отсутствие правильного выхода, но вы все равно должны иметь библиотеку DLL элемента управления, созданную и доступную для использования.

Создание первоначального проекта ATL с помощью мастера проектов ATL

  1. В Visual Studio 2017 и более ранних версиях: файл>нового>проекта. Откройте вкладку Visual C++ и выберите MFC/ATL. Выберите проект ATL.

    В Visual Studio 2019: выберите >новый>проект, введите atl в поле поиска и выберите ATL Project.

  2. Введите Polygon в качестве имени проекта.

    Расположение исходного кода обычно по умолчанию имеет значение \Users\username>\<source\repos, а новая папка будет создана автоматически.

  3. В Visual Studio 2019 примите значения по умолчанию и нажмите кнопку "ОК". В Visual Studio 2017 нажмите кнопку "ОК ", чтобы открыть мастер проекта ATL. Щелкните "Параметры приложения", чтобы просмотреть доступные параметры. Так как этот проект создает элемент управления, а элемент управления должен быть сервером внутрипроцессного процесса, оставьте тип приложения в виде библиотеки DLL. Щелкните OK.

Visual Studio создаст проект, создав несколько файлов. Эти файлы можно просмотреть в Обозреватель решений, разверните Polygon объект. Ниже перечислены файлы.

Файл Description
Polygon.cpp Содержит реализацию DllMain, , DllRegisterServerDllCanUnloadNowDllGetClassObjectи .DllUnregisterServer Также содержит карту объектов, которая является списком объектов ATL в проекте. Изначально это пусто.
Polygon.def Этот файл определения модуля предоставляет компоновщику сведения о экспорте, необходимых библиотеке DLL.
Polygon.idl Файл языка определения интерфейса, описывающий интерфейсы, относящиеся к объектам.
Polygon.rgs Этот скрипт реестра содержит сведения о регистрации библиотеки DLL программы.
Polygon.rc Файл ресурса, который изначально содержит сведения о версии и строку, содержащую имя проекта.
Resource.h Файл заголовка для файла ресурсов.
Polygonps.def Этот файл определения модуля предоставляет компоновщику сведения о экспорте, необходимых прокси-серверу и коду заглушки, поддерживающим вызовы между квартирами.
stdafx.cpp Файл, который будет #include stdafx.h.
stdafx.h Файл, который будет #include и предварительно компилировать файлы заголовков ATL.
Файл Description
Polygon.cpp Содержит реализацию DllMain, , DllRegisterServerDllCanUnloadNowDllGetClassObjectи .DllUnregisterServer Также содержит карту объектов, которая является списком объектов ATL в проекте. Изначально это пусто.
Polygon.def Этот файл определения модуля предоставляет компоновщику сведения о экспорте, необходимых библиотеке DLL.
Polygon.idl Файл языка определения интерфейса, описывающий интерфейсы, относящиеся к объектам.
Polygon.rgs Этот скрипт реестра содержит сведения о регистрации библиотеки DLL программы.
Polygon.rc Файл ресурса, который изначально содержит сведения о версии и строку, содержащую имя проекта.
Resource.h Файл заголовка для файла ресурсов.
Polygonps.def Этот файл определения модуля предоставляет компоновщику сведения о экспорте, необходимых прокси-серверу и коду заглушки, поддерживающим вызовы между квартирами.
pch.cpp Файл, который будет #include pch.h.
pch.h Файл, который будет #include и предварительно компилировать файлы заголовков ATL.
  1. В обозревателе решений щелкните правой кнопкой мыши проект Polygon.

  2. В контекстном меню выберите пункт "Свойства".

  3. Щелкните компоновщик. Измените параметр Per-UserRedirection на "Да".

  4. Щелкните OK.

На следующем шаге вы добавите элемент управления в проект.

Переход к шагу 2

См. также

Руководство