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.

88 lines
3.4 KiB

  1. //+----------------------------------------------------------------------------
  2. // File: licmgrid.hxx
  3. //
  4. // Synopsis:
  5. //
  6. //-----------------------------------------------------------------------------
  7. #ifndef _LICMGRID_HXX
  8. #define _LICMGRID_HXX
  9. // CLSID_LicenseManager {5220CB21-C88D-11cf-B347-00AA00A28331}
  10. DEFINE_GUID(CLSID_LicenseManager, 0x5220cb21, 0xc88d, 0x11cf, 0xb3, 0x47, 0x00, 0xaa, 0x00, 0xa2, 0x83, 0x31);
  11. // UUID_LPKVersion1 {3D25ABA1-CAEC-11cf-B34A-00AA00A28331}
  12. DEFINE_GUID(UUID_LPKVersion1, 0x3d25aba1, 0xcaec, 0x11cf, 0xb3, 0x4a, 0x00, 0xaa, 0x00, 0xa2, 0x83, 0x31);
  13. // SID_SLocalRegistry/IID_ILocalRegistry { 6d5140d3-7436-11ce-8034-00aa006009fa }
  14. DEFINE_GUID(IID_ILocalRegistry, 0x6d5140d3, 0x7436, 0x11ce, 0x80, 0x34, 0x00, 0xaa, 0x00, 0x60, 0x09, 0xfa);
  15. #define SID_SLocalRegistry IID_ILocalRegistry
  16. #undef INTERFACE
  17. #define INTERFACE ILocalRegistry
  18. DECLARE_INTERFACE_(ILocalRegistry, IUnknown)
  19. {
  20. // *** IUnknown methods ***
  21. STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
  22. STDMETHOD_(ULONG, AddRef)(THIS) PURE;
  23. STDMETHOD_(ULONG, Release)(THIS) PURE;
  24. // *** ILocalRegistry methods ***
  25. STDMETHOD(CreateInstance)(THIS_
  26. /* [in] */ CLSID clsid,
  27. /* [in] */ IUnknown * punkOuter,
  28. /* [in] */ REFIID riid,
  29. /* [in] */ DWORD dwFlags,
  30. /* [out] */ void ** ppvObj ) PURE;
  31. STDMETHOD(GetTypeLibOfClsid)(THIS_
  32. /* [in] */ CLSID clsid,
  33. /* [out] */ ITypeLib ** ptlib ) PURE;
  34. STDMETHOD(GetClassObjectOfClsid)(THIS_
  35. /* [in] */ REFCLSID clsid,
  36. /* [in] */ DWORD dwClsCtx,
  37. /* [in] */ LPVOID lpReserved,
  38. /* [in] */ REFIID riid,
  39. /* [out] */ void ** ppcClassObject ) PURE;
  40. };
  41. // IID_IRequireClasses { 6d5140d0-7436-11ce-8034-00aa006009fa }
  42. DEFINE_GUID(IID_IRequireClasses, 0x6d5140d0, 0x7436, 0x11ce, 0x80, 0x34, 0x00, 0xaa, 0x00, 0x60, 0x09, 0xfa);
  43. #undef INTERFACE
  44. #define INTERFACE IRequireClasses
  45. DECLARE_INTERFACE_(IRequireClasses, IUnknown)
  46. {
  47. // *** IUnknown methods ***
  48. STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
  49. STDMETHOD_(ULONG, AddRef)(THIS) PURE;
  50. STDMETHOD_(ULONG, Release)(THIS) PURE;
  51. // *** IRequireClasses methods ***
  52. STDMETHOD(CountRequiredClasses)(THIS_
  53. /* [out] */ ULONG * pcClasses ) PURE;
  54. STDMETHOD(GetRequiredClasses)(THIS_
  55. /* [in] */ ULONG index,
  56. /* [out] */ CLSID * pclsid ) PURE;
  57. };
  58. // SID_SLicensedClassManager/IID_ILicensedClassManager { 6d5140d4-7436-11ce-8034-00aa006009fa }
  59. DEFINE_GUID(IID_ILicensedClassManager, 0x6d5140d4, 0x7436, 0x11ce, 0x80, 0x34, 0x00, 0xaa, 0x00, 0x60, 0x09, 0xfa);
  60. #define SID_SLicensedClassManager IID_ILicensedClassManager
  61. #undef INTERFACE
  62. #define INTERFACE ILicensedClassManager
  63. DECLARE_INTERFACE_(ILicensedClassManager, IUnknown)
  64. {
  65. // *** IUnknown methods ***
  66. STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
  67. STDMETHOD_(ULONG, AddRef)(THIS) PURE;
  68. STDMETHOD_(ULONG, Release)(THIS) PURE;
  69. // *** ILicensedClassManager methods ***
  70. STDMETHOD(OnChangeInRequiredClasses)(THIS_
  71. /* [in] */ IRequireClasses *pRequireClasses) PURE;
  72. };
  73. #endif // _LICMGRID_HXX