CComClassFactory2

templatelt; класс лицензия>
класс CComClassFactory2: государственные CComClassFactory2Base
лицензия

Параметры

лицензия

Класс, реализующий следующие статические функции:

Реализует CComClassFactory2 IClassFactory2 интерфейс, который представляет собой расширение из IClassFactory. Создание объекта контроля IClassFactory2 через лицензии. Класс фабрика выполнения на компьютере лицензированных может предоставить во время выполнения лицензионный ключ. Этот лицензионный ключ позволяет приложению создать экземпляры объектов, когда не существует полная машина лицензии.

Обычно объекты ATL приобрести производство объектов класса путем наследования от CComCoClass. Этот класс содержит макрос DECLARE_CLASSFACTORY, который объявляет CComClassFactory как фабрики классов по умолчанию. Чтобы использовать CComClassFactory2, укажите макрос DECLARE_CLASSFACTORY2 в определении класса вашего объекта. Например:

класс CMyClass:..., публичных CComCoClasslt; ... >
{
общественности:
   DECLARE_CLASSFACTORY2(CMyLicense)

...
}

CMyLicense, параметр шаблона для CComClassFactory2, необходимо реализовать статические функции VerifyLicenseKey, GetLicenseKeyи IsLicenseValid. Ниже приведен пример простой лицензии класса:

класс CMyLicense
{
Охраняемые:
 nbsp; статические BOOL VerifyLicenseKey(BSTR bstr)
   {
      USES_CO&NVERSION;
      возвращение! lstrcmp(OLE2T(bstr), _T ("Моя во время лицензионный ключ"));
   }

статические BOOL GetLicenseKey(DWORD dwReserved, BSTR* pBstr) {}
      USES_CONVERSION;
      * pBstr = SysAllocString (T2OLE (_T ("Моя во время лицензионный ключ»))); 
      Возвращает значение TRUE;
   }

статические BOOL IsLicenseValid() {возвращает TRUE;}
}

CComClassFactory2 происходит из CComClassFactory2Base и лицензия. CComClassFactory2Base, в свою очередь, вытекает из IClassFactory2 и CComObjectRootExlt; CComGlobalsThreadModel >.

# include lt;atlcom.h>

Члены класса

См. также CComClassFactoryAutoThread, CComClassFactorySingleton, CComObjectRootEx, CComGlobalsThreadModel

Index