Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Uyarı
Etkin Şablon Kitaplığı (ATL) desteklenmeye devam eder. Ancak artık özellik eklemeyeceğiz veya belgeleri güncelleştirmeyeceğiz.
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::GetObjectDescriptionGetObjectDescriptioniçin kullanabileceğiniz bir 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.