CComClassFactory2

templatelt, classe licença>
Classe CComClassFactory2: CComClassFactory2Base público,
licença

Parâmetros

licença

Uma classe que implementa o seguinte Estático funções:

CComClassFactory2 implementa o interface IClassFactory2 , que é uma extensão de IClassFactory. Controles de IClassFactory2 objeto criação através de uma licença. Um classe factory executar em uma máquina licenciada pode fornecer uma chave de licença de tempo de execução. Essa chave de licença permite que um aplicativo instanciar objetos quando uma licença completa máquina não existe.

Objetos ATL normalmente adquirem uma fábrica de classes derivando de CComCoClass. Essa classe inclui a macro DECLARE_CLASSFACTORY, que declara CComClassFactory como a fábrica de classe padrão. Para usar CComClassFactory2, especifique a macro de DECLARE_CLASSFACTORY2usa na definição de classe do objeto. Por exemplo:

classe CMyClass:..., CComCoClasslt pública; ... >
{
público:
   DECLARE_CLASSFACTORY2(CMyLicense)

...
}

CMyLicense, o parâmetro do modelo para CComClassFactory2, deve implementar o Estático funções VerifyLicenseKey, GetLicenseKeye IsLicenseValid. A seguir está um exemplo de uma classe simples licença:

classe CMyLicense
{
protegido:
 nbsp; estático BOOL VerifyLicenseKey(BSTR bstr)
   {
      USES_CO&NVERSION;
      retornar! lstrcmp(OLE2T(bstr),  t ("minha chave de licença de tempo de execução"));
   }

estático BOOL GetLicenseKey(DWORD dwReserved, BSTR* pBstr) {
      USES_CONVERSION;
      * pBstr = SysAllocString (T2OLE ( t ("minha chave de licença de tempo de execução"))); 
      retornar TRUE;
   }

estático BOOL IsLicenseValid() {return TRUE;}
}

CComClassFactory2 deriva de CComClassFactory2Base e licença. CComClassFactory2Base, por sua vez, deriva de IClassFactory2 e CComObjectRootExlt; CComGlobalsThreadModel >.

# include lt;atlcom.h>

Membros de classe

Co&nsulte tambémnbsp;CComClassFactoryAutoThread, CComClassFactorySingleton, CComObjectRootEx, CComGlobalsThreadModel

Index