Nesne İşleme Makroları

Bu makrolar nesne eşlemelerini ve girdilerini tanımlar.

Veri Akışı Adı Açıklama
DECLARE_OBJECT_DESCRIPTION Bir sınıf nesnesinin nesne eşlemesine girilecek metin açıklamasını belirtmenize olanak tanır.
OBJECT_ENTRY_AUTO Nesne eşlemesine bir ATL nesnesi girer, kayıt defterini güncelleştirir ve nesnenin bir örneğini oluşturur.
OBJECT_ENTRY_NON_CREATEABLE_EX_AUTO Nesnenin kaydedilmesi ve başlatılması gerektiğini belirtmenize olanak tanır, ancak aracılığıyla CoCreateInstancedışarıdan oluşturulamaz.

Gereksinimler

Üst bilgi: atlcom.h

DECLARE_OBJECT_DESCRIPTION

Sınıf nesneniz için bir metin açıklaması belirtmenize olanak tanır.

DECLARE_OBJECT_DESCRIPTION( x )

Parametreler

x
[in] Sınıf nesnesinin açıklaması.

Açıklamalar

ATL bu açıklamayı OBJECT_ENTRY_AUTO makro aracılığıyla nesne eşlemesine girer.

DECLARE_OBJECT_DESCRIPTION CComCoClass::GetObjectDescription yöntemini geçersiz kılmak için kullanabileceğiniz bir GetObjectDescription işlev uygular.

GetObjectDescription işlevi tarafından IComponentRegistrar::GetComponentsçağrılır. IComponentRegistrar , DLL'de tek tek bileşenleri kaydetmenize ve kaydını kaldırmanıza olanak tanıyan bir Otomasyon arabirimidir. ATL Proje Sihirbazı ile bir Bileşen Kayıt Şirketi nesnesi oluşturduğunuzda, sihirbaz arabirimi otomatik olarak uygular IComponentRegistrar . IComponentRegistrar genellikle Microsoft Transaction Server tarafından kullanılır.

ATL Proje Sihirbazı hakkında daha fazla bilgi için ATL Projesi Oluşturma makalesine bakın.

Örnek

class ATL_NO_VTABLE CMyDescribedClass :
   public CComObjectRoot,
   public CComCoClass<CMyDescribedClass, &CLSID_MyDescribedClass>
{
public:
   CMyDescribedClass()
   {
   }

   // Override CComCoClass::GetObjectDescription
   DECLARE_OBJECT_DESCRIPTION("My Described Object 1.0")
};

OBJECT_ENTRY_AUTO

Nesne eşlemesine bir ATL nesnesi girer, kayıt defterini güncelleştirir ve nesnenin bir örneğini oluşturur.

OBJECT_ENTRY_AUTO( clsid, class )

Parametreler

clsid
[in] adlı C++ sınıfı tarafından uygulanan bir COM sınıfının CLSID'si.

class
[in] clsid tarafından temsil edilen COM sınıfını uygulayan C++ sınıfının adı.

Açıklamalar

Nesne girişi makroları, bir sınıfın kaydı, başlatılması ve oluşturulması için destek sağlamak üzere projedeki genel kapsama yerleştirilir.

OBJECT_ENTRY_AUTO, bu nesne için oluşturan sınıfın ve sınıf-fabrika oluşturucu sınıfı CreateInstance işlevlerinin işlev işaretçilerini otomatik olarak oluşturulan ATL nesne eşlemesine girer. CAtlComModule::RegisterServer çağrıldığında, nesne eşlemesindeki her nesne için sistem kayıt defterini güncelleştirir.

Aşağıdaki tabloda, nesne eşlemesine eklenen bilgilerin bu makronun ikinci parametresi olarak verilen sınıftan nasıl alındığı açıklanmaktadır.

Için bilgiler Şu kaynaktan elde edildi:
COM kaydı Kayıt Defteri Makroları
Sınıf fabrikası oluşturma Sınıf Fabrikası Makroları
Örnek oluşturma Toplama Makroları
Bileşen kategorisi kaydı Kategori Makroları
Sınıf düzeyinde başlatma ve temizleme ObjectMain

OBJECT_ENTRY_NON_CREATEABLE_EX_AUTO

Nesnenin kaydedilmesi ve başlatılması gerektiğini belirtmenize olanak tanır, ancak aracılığıyla CoCreateInstancedışarıdan oluşturulamaz.

OBJECT_ENTRY_NON_CREATEABLE_EX_AUTO( clsid, class )

Parametreler

clsid
[in] adlı C++ sınıfı tarafından uygulanan bir COM sınıfının CLSID'si.

class
[in] clsid tarafından temsil edilen COM sınıfını uygulayan C++ sınıfının adı.

Açıklamalar

Nesne girişi makroları, bir sınıfın kaydı, başlatılması ve oluşturulması için destek sağlamak üzere projedeki genel kapsama yerleştirilir.

OBJECT_ENTRY_NON_CREATEABLE_EX_AUTO, bir nesnenin kaydedilmesi ve başlatılması gerektiğini belirtmenize olanak tanır (daha fazla bilgi için bkz . OBJECT_ENTRY_AUTO ), ancak aracılığıyla CoCreateInstanceoluşturulamaz.

Ayrıca bkz.

Makrolar