windows-nt/Source/XPSP1/NT/com/ole32/ih/hkoleobj.h
2020-09-26 16:20:57 +08:00

72 lines
1.7 KiB
C++

//+-------------------------------------------------------------------------
//
// 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 <Windows.h>
#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_