Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

53 lines
1.5 KiB

  1. //=--------------------------------------------------------------------------=
  2. // ClassF.H
  3. //=--------------------------------------------------------------------------=
  4. // Copyright 1995-1997 Microsoft Corporation. All Rights Reserved.
  5. //
  6. // THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
  7. // ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
  8. // THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
  9. // PARTICULAR PURPOSE.
  10. //=--------------------------------------------------------------------------=
  11. //
  12. // header for the ClassFactory Object. we support IClassFactory and
  13. // IClassFactory2
  14. //
  15. #ifndef _CLASSF_H_
  16. #include "olectl.h"
  17. class CClassFactory : public IClassFactory2 {
  18. public:
  19. // IUnknown methods
  20. //
  21. STDMETHOD(QueryInterface)(REFIID riid, void **ppvObjOut);
  22. STDMETHOD_(ULONG, AddRef)(void);
  23. STDMETHOD_(ULONG, Release)(void);
  24. // IClassFactory methods
  25. //
  26. STDMETHOD(CreateInstance)(IUnknown *pUnkOuter, REFIID riid, void **ppbObjOut);
  27. STDMETHOD(LockServer)(BOOL fLock);
  28. // IClassFactory2 methods
  29. //
  30. STDMETHOD(GetLicInfo)(LICINFO *pLicInfo);
  31. STDMETHOD(RequestLicKey)(DWORD dwReserved, BSTR *pbstrKey);
  32. STDMETHOD(CreateInstanceLic)(IUnknown *pUnkOuter, IUnknown *pUnkReserved, REFIID riid, BSTR bstrKey, void **ppvObjOut);
  33. CClassFactory(int iIndex);
  34. ~CClassFactory();
  35. private:
  36. ULONG m_cRefs;
  37. int m_iIndex;
  38. };
  39. // global variable for Locks on our DLL
  40. //
  41. extern LONG g_cLocks;
  42. #define _CLASSF_H_
  43. #endif // _CLASSF_H_