Udostępnij za pośrednictwem


Tworzenie obiektu ATL z atrybutem noncreatable

Można zmienić atrybuty obiektu COM opartego na ATL, aby klient nie mógł bezpośrednio utworzyć obiektu. W takim przypadku obiekt zostanie zwrócony za pomocą wywołania metody dla innego obiektu, a nie utworzonego bezpośrednio.

Aby utworzyć obiekt nieutwórzalny

  1. Usuń OBJECT_ENTRY_AUTO dla obiektu. Jeśli chcesz, aby obiekt był nieutwórzalny, ale kontrolka ma być zarejestrowana, zastąp OBJECT_ENTRY_AUTO OBJECT_ENTRY_NON_CREATEABLE_EX_AUTO.

  2. Dodaj atrybut nieutwórzalny do coclass w pliku idl. Na przykład:

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

Zobacz też

Kreator projektu ATL
Typy projektów języka C++ w programie Visual Studio
Programowanie za pomocą kodu ATL i C Run-Time
Podstawowe informacje na temat obiektów COM ATL
Domyślne konfiguracje projektu ATL