Таким образом, чтобы клиент автоматизации не может напрямую создать объект можно изменить атрибуты на базе ATL COM-объекта. В этом случае объект будет возвращен через вызов метода на другой объект, а не непосредственно создается.
Чтобы сделать объект noncreatable
[
UUID(A1992E3D-3CF0-11d0-826F-00A0C90F2851),
helpString("MyObject"),
noncreatable
]
Компонентный класс MyObject
{
[по умолчанию] интерфейс IMyInterface;
}