Konfigurieren eines ATL-Objekts als nicht erstellbares Objekt

Sie können die Attribute eines ATL-basierten COM-Objekts ändern, sodass ein Client das Objekt nicht direkt erstellen kann. In diesem Fall würde das Objekt über einen Methodenaufruf für ein anderes Objekt zurückgegeben, anstatt direkt erstellt zu werden.

So erstellen Sie ein Objekt nicht erstellbar

  1. Entfernen Sie die OBJECT_ENTRY_AUTO für das Objekt. Wenn das Objekt nicht erstellt werden kann, aber das Steuerelement registriert werden soll, ersetzen Sie OBJECT_ENTRY_AUTO durch OBJECT_ENTRY_NON_CREATEABLE_EX_AUTO.

  2. Fügen Sie der Coclass in der IDL-Datei das nicht erstellbare Attribut hinzu. Zum Beispiel:

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

Siehe auch

ATL-Projekt-Assistent
C++-Projektvorlagen
Programmieren mit ATL- und C-Laufzeitcode
Grundlagen von ARL COM-Objekten
Standardmäßige ATL-Projektkonfigurationen