Classe de CComCoClass
Essa classe fornece métodos para criar instâncias de uma classe, obter e suas propriedades.
template<
class T,
const CLSID* pclsid = &CLSID_NULL
>
class CComCoClass
Parâmetros
T
Sua classe, derivada de CComCoClass.pclsid
Um ponteiro para o CLSID do objeto.
Membros
Métodos públicos
Nome |
Descrição |
---|---|
(Static) Cria uma instância da classe e consultar-la para uma interface. |
|
(Static) Retorna informações de erro para o cliente rica. |
|
(Static) Retorna o identificador da classe de objeto. |
|
Substituição (estático) para retornar a descrição do objeto. |
Comentários
CComCoClass fornece métodos para recuperar o CLSID de um objeto, definir informações de erro, e criar instâncias da classe.Qualquer classe registrada em mapeamento de objeto deve ser derivada de CComCoClass.
CComCoClass também define o modelo padrão de fábrica e de distribuição de classe para o objeto.CComCoClass usa os dois seguintes macros:
DECLARE_CLASSFACTORY declara o factory da classe para ser CComClassFactory.
DECLARE_AGGREGATABLE declara que o objeto pode ser agregado.
Você pode substituir qualquer uma de essas opções especificando outro macro em sua definição de classe.Por exemplo, para usar CComClassFactory2 em vez de CComClassFactory, especifique a macro de 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
Requisitos
Cabeçalho: atlcom.h