Classe di CComCoClass
Questa classe fornisce metodi per creare istanze di una classe e ottenere le proprietà.
template<
class T,
const CLSID* pclsid = &CLSID_NULL
>
class CComCoClass
Parametri
T
La classe, derivata da CComCoClass.pclsid
Un puntatore al CLSID dell'oggetto.
Membri
Metodi pubblici
Nome |
Descrizione |
---|---|
(Proprietà statica) crea un'istanza della classe e query per l'interfaccia. |
|
(Proprietà statica) restituisce informazioni dettagliate sul client. |
|
(Proprietà statica) restituisce l'identificatore di classe dell'oggetto. |
|
Override (statico) per restituire la descrizione dell'oggetto. |
Note
CComCoClass fornisce metodi per recuperare il CLSID di un oggetto, le informazioni di errore di selezione e creare istanze della classe.Qualsiasi classe registrata in mappa oggetto deve essere derivata da CComCoClass.
CComCoClass definisce anche la factory della classe predefinita e il modello di aggregazione per l'oggetto.CComCoClass utilizza le due macro:
DECLARE_CLASSFACTORY dichiara la class factory per essere CComClassFactory.
DECLARE_AGGREGATABLE indicare che l'oggetto può essere aggregatoe.
È possibile eseguire l'override di queste impostazioni predefinite specificando un'altra macro nella definizione della classe.Ad esempio, per utilizzare CComClassFactory2 anziché CComClassFactory, specificare la macro DECLARE_CLASSFACTORY2 :
class ATL_NO_VTABLE CMyClass2 :
public CComObjectRootEx<CComSingleThreadModel>,
public CComCoClass<CMyClass2, &CLSID_MyClass>,
public IDispatchImpl<IMyClass, &IID_IMyClass, &LIBID_NVC_ATL_COMLib, /*wMajor =*/ 1, /*wMinor =*/ 0>,
public IDispatchImpl<IMyDualInterface, &__uuidof(IMyDualInterface), &LIBID_NVC_ATL_COMLib, /* wMajor = */ 1, /* wMinor = */ 0>
{
public:
DECLARE_CLASSFACTORY2(CMyLicense)
// Remainder of class declaration omitted
Requisiti
Header: atlcom.h