Rendere un oggetto ATL non creabile

È possibile modificare gli attributi di un oggetto COM basato su ATL in modo che un client non possa creare direttamente l'oggetto. In questo caso, l'oggetto verrebbe restituito tramite una chiamata al metodo su un altro oggetto anziché creato direttamente.

Per rendere un oggetto non creabile

  1. Rimuovere il OBJECT_ENTRY_AUTO per l'oggetto . Se si desidera che l'oggetto non sia creabile, ma il controllo deve essere registrato, sostituire OBJECT_ENTRY_AUTO con OBJECT_ENTRY_NON_CREATEABLE_EX_AUTO.

  2. Aggiungere l'attributo noncreabile alla coclasse nel file con estensione idl. Ad esempio:

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

Vedi anche

Creazione guidata progetto ATL
Tipi di progetto C++ in Visual Studio
Programmazione con il codice runtime C e ATL
Nozioni fondamentali sugli oggetti COM ATL
Configurazioni progetto ATL predefinite