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.

71 lines
1.7 KiB

  1. //+-------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. // Copyright (C) Microsoft Corporation, 1994.
  5. //
  6. // File: hkoleobj.h
  7. //
  8. // Contents: IHookOleObject Interface Header File
  9. //
  10. // Functions:
  11. //
  12. // History: 01-Aug-94 Garry Lenz Created
  13. // 20-Sep-94 Garry Lenz Added EnableRegistration
  14. // 13-Oct-94 Garry Lenz Derive from IUnknownEx
  15. // 13-Oct-94 Garry Lenz Added EnumObjects
  16. // 20-Oct-94 Garry Lenz Added AssociateInstance
  17. // 14-Dec-94 Don Wright Added fCreate param to RegisterObject
  18. //
  19. //--------------------------------------------------------------------------
  20. #ifndef _IHOOKOLEOBJECT_H_
  21. #define _IHOOKOLEOBJECT_H_
  22. #include <Windows.h>
  23. #include "hkunkex.h"
  24. interface IHookOleInstance;
  25. enum EHookEnumFlags
  26. {
  27. HEF_Instances = 1,
  28. HEF_Classes = 2,
  29. HEF_Interfaces = 3
  30. };
  31. interface IHookOleObject : IUnknownEx
  32. {
  33. public:
  34. STDMETHOD ( EnumObjects )
  35. (
  36. DWORD dwEnumFlags,
  37. IEnumUnknown** pIEnum
  38. ) = 0;
  39. STDMETHOD ( RegisterObject )
  40. (
  41. REFCLSID rclsid,
  42. REFIID riid,
  43. LPVOID pvObj,
  44. BOOL fCreate
  45. ) = 0;
  46. STDMETHOD ( UnregisterObject )
  47. (
  48. LPVOID pvObj
  49. ) = 0;
  50. STDMETHOD ( UnregisterAll )
  51. (
  52. void
  53. ) = 0;
  54. STDMETHOD ( EnableRegistration )
  55. (
  56. BOOL fEnable
  57. ) = 0;
  58. STDMETHOD ( AssociateInstance )
  59. (
  60. REFIID riid,
  61. LPVOID pvObj,
  62. IHookOleInstance** ppIHookOleInstance
  63. ) = 0;
  64. };
  65. #endif // _IHOOKOLEOBJECT_H_