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


Применение к объекту ATL атрибута noncreatable

Можно изменить атрибуты COM-объекта, основанного на библиотеке ATL, таким образом, что клиент не сможет создавать этот объект напрямую. В таком случае объект будет возвращен посредством вызова метода в другом объекте, а не создан напрямую.

Применение к объекту ATL атрибута noncreatable

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

  2. Добавьте атрибут noncreatable в компонентный класс в IDL-файле. Например:

    [
       uuid(A1992E3D-3CF0-11D0-826F-00A0C90F2851),
       helpstring("MyObject"),
      noncreatable
    ]
    coclass MyObject
    {
       [default] interface IMyInterface;
    }
    

См. также

Ссылки

мастер проектов ATL

Fundamentals of ATL COM Objects

Конфигурации по умолчанию проекта ATL

Основные понятия

Типы проектов Visual C++

Программирование с использованием ATL и кода среды выполнения C

Другие ресурсы

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