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


Мастер простых объектов ATL

Этот мастер вставляет в проект минимальный COM-объект. Эта страница мастера позволяет указать имена, определяющие класс и файлы C++ для объекта и его функции COM.

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

Замечания

Начиная с Visual Studio 2008, сценарий регистрации, созданный этим мастером, зарегистрирует свои компоненты COM в разделе HKEY_CURRENT_USER вместо HKEY_LOCAL_MACHINE. Чтобы изменить это, задайте в мастере ATL параметр Register component for all users (Регистрация компонентов для всех пользователей).

Имена

Укажите имена объекта, интерфейса и классов, которые необходимо добавить в проект. Все поля, кроме Короткое имя, можно редактировать независимо друг от друга. Если вы меняете текст для короткого имени, то это отображается в именах остальных полей на странице. Если в разделе COM вы измените имя Coclass, это отразится в полях Type и ProgID, но имя Interface не изменится. Этот принцип именования позволяет вам легко распознать имена при разработке элементов управления.

Примечание.

Coclass можно изменять только для проектов без атрибутов. Если проект содержит атрибуты, Coclass изменить невозможно.

C++

Предоставляет информацию для класса C++, созданного для объекта.

  • Краткое название

    Задает сокращенное имя для объекта. Имя, которым вы определяете имена Class и Coclass, CPP-файла и H-файла, Interface, Type и ProgID, если вы не изменили эти поля по отдельности.

  • H-файл

    Задает имя файла заголовка для класса нового объекта. По умолчанию это имя основано на имени, указанном в поле Короткое имя. Нажмите кнопку с многоточием, чтобы сохранить имя файла в выбранном расположении или добавить объявление класса к существующему файлу. При выборе существующего файла мастер не сохраняет его в выбранном расположении, пока вы не нажмете в мастере кнопку Готово.

    Мастер не перезаписывает файл. Если выбрать имя существующего файла, при нажатии кнопки Готово мастер предложит указать, нужно ли добавить объявление класса к содержимому файла. Чтобы добавить данные в файл, нажмите кнопку Да; чтобы вернуться в мастер и указать другое имя файла, нажмите кнопку Нет.

  • Class

    Задает имя создаваемого класса. Это имя основано на имени, указанном в поле Короткое имя, с предшествующей "С" — типичным префиксом для имени класса.

  • CPP-файл

    Задает имя файла реализации для класса нового объекта. По умолчанию это имя основано на имени, указанном в поле Короткое имя. Нажмите кнопку с многоточием, чтобы сохранить имя файла в выбранном расположении. Файл не сохраняется в выбранном расположении, пока вы не нажмете кнопку Готово в мастере.

    Мастер не перезаписывает файл. Если выбрать имя существующего файла, при нажатии кнопки Готово мастер предложит указать, нужно ли добавить реализацию класса к содержимому файла. Чтобы добавить данные в файл, нажмите кнопку Да; чтобы вернуться в мастер и указать другое имя файла, нажмите кнопку Нет.

  • Attributed

    Указывает, использует ли объект атрибуты. Если вы добавляете объект в проект ATL с атрибутами, этот параметр будет установлен и недоступен для изменения. То есть вы можете добавить только помеченные атрибутами объекты в проект, созданный с поддержкой атрибутов.

    Объект с атрибутами можно добавить только в проект ATL с поддержкой атрибутов. Если выбрать этот параметр для проекта ATL без поддержки атрибутов, мастер предложит указать, нужно ли добавить поддержку атрибутов в проект.

    По умолчанию объекты, которые добавляются после установки этого параметра, определяются как атрибуты (флажок установлен). Вы можете снять этот флажок, чтобы добавить объект, который не использует атрибуты.

    Дополнительные сведения см. в Параметры приложениях, мастере проектов ATL и базовой механике атрибутов.

COM

Предоставляет сведения о функциональных возможностях модели COM для объекта.

  • Coclass

    Задает имя класса компонентов, содержащего список интерфейсов, поддерживаемых объектом.

    Примечание.

    Если вы создаете проект с помощью атрибутов или указываете на этой странице мастера, что объект использует атрибуты, нельзя изменить этот параметр, так как ATL не включает coclass атрибут.

  • Тип

    Задает описание объекта, которое отобразится в реестре.

  • Интерфейс

    Задает интерфейс, созданный вами для объекта. Этот интерфейс содержит настраиваемые методы.

  • ProgID

    Задает имя, которое можно использовать для контейнеров вместо CLSID объекта.

См. также

Простой объект ATL