//+------------------------------------------------------------------------- // // Microsoft Windows // Copyright (C) Microsoft Corporation, 1994. // // File: hkoleobj.h // // Contents: IHookOleObject Interface Header File // // Functions: // // History: 01-Aug-94 Garry Lenz Created // 20-Sep-94 Garry Lenz Added EnableRegistration // 13-Oct-94 Garry Lenz Derive from IUnknownEx // 13-Oct-94 Garry Lenz Added EnumObjects // 20-Oct-94 Garry Lenz Added AssociateInstance // 14-Dec-94 Don Wright Added fCreate param to RegisterObject // //-------------------------------------------------------------------------- #ifndef _IHOOKOLEOBJECT_H_ #define _IHOOKOLEOBJECT_H_ #include #include "hkunkex.h" interface IHookOleInstance; enum EHookEnumFlags { HEF_Instances = 1, HEF_Classes = 2, HEF_Interfaces = 3 }; interface IHookOleObject : IUnknownEx { public: STDMETHOD ( EnumObjects ) ( DWORD dwEnumFlags, IEnumUnknown** pIEnum ) = 0; STDMETHOD ( RegisterObject ) ( REFCLSID rclsid, REFIID riid, LPVOID pvObj, BOOL fCreate ) = 0; STDMETHOD ( UnregisterObject ) ( LPVOID pvObj ) = 0; STDMETHOD ( UnregisterAll ) ( void ) = 0; STDMETHOD ( EnableRegistration ) ( BOOL fEnable ) = 0; STDMETHOD ( AssociateInstance ) ( REFIID riid, LPVOID pvObj, IHookOleInstance** ppIHookOleInstance ) = 0; }; #endif // _IHOOKOLEOBJECT_H_