|
|
#ifndef UNIX
#pragma pack(push, 8)
#endif
//+------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1995.
//
// File: objext.h
//
// Contents: header file for Object Extensions interfaces
//
// 6/24/96 (dbau) removed IServiceProvider (to servprov.h)
//-------------------------------------------------------------------------
#ifndef __OBJEXT_H
#define __OBJEXT_H
#ifndef BEGIN_INTERFACE
#define BEGIN_INTERFACE
#endif
///////////////////////////////////////////////////////////////////////////
//
// forward declares
//
///////////////////////////////////////////////////////////////////////////
#ifdef __cplusplus
interface IFilterMembers; #else // __cplusplus
typedef interface IFilterMembers IFilterMembers; #endif // __cplusplus
///////////////////////////////////////////////////////////////////////////
//
// Object Extension Interfaces
//
///////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
//
// Standard Services and Interfaces
//
///////////////////////////////////////////////////////////////////////////
//-------------------------------------------------------------------------
// SLicensedClassManager
// VBA provides this service to it's components and hosts to optimize
// registry access and to insulate them from licensing concerns
//
// interfaces implemented:
// ILicensedClassManager
//-------------------------------------------------------------------------
// { 6d5140d0-7436-11ce-8034-00aa006009fa }
DEFINE_GUID(IID_IRequireClasses, 0x6d5140d0, 0x7436, 0x11ce, 0x80, 0x34, 0x00, 0xaa, 0x00, 0x60, 0x09, 0xfa);
#undef INTERFACE
#define INTERFACE IRequireClasses
DECLARE_INTERFACE_(IRequireClasses, IUnknown) { BEGIN_INTERFACE // *** IUnknown methods ***
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE;
// *** IRequireClasses methods ***
STDMETHOD(CountRequiredClasses)(THIS_ /* [out] */ ULONG * pcClasses ) PURE; STDMETHOD(GetRequiredClasses)(THIS_ /* [in] */ ULONG index, /* [out] */ CLSID * pclsid ) PURE; };
// { 6d5140d4-7436-11ce-8034-00aa006009fa }
DEFINE_GUID(IID_ILicensedClassManager, 0x6d5140d4, 0x7436, 0x11ce, 0x80, 0x34, 0x00, 0xaa, 0x00, 0x60, 0x09, 0xfa); #define SID_SLicensedClassManager IID_ILicensedClassManager
#undef INTERFACE
#define INTERFACE ILicensedClassManager
DECLARE_INTERFACE_(ILicensedClassManager, IUnknown) { BEGIN_INTERFACE // *** IUnknown methods ***
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE;
// *** ILicensedClassManager methods ***
STDMETHOD(OnChangeInRequiredClasses)(THIS_ /* [in] */ IRequireClasses *pRequireClasses) PURE; };
//-------------------------------------------------------------------------
// SLocalRegistry Service
// VBA provides this service to it's components and hosts to optimize
// registry access and to insulate them from licensing concerns
//
// interfaces implemented:
// ILocalRegistry
//-------------------------------------------------------------------------
// { 6d5140d3-7436-11ce-8034-00aa006009fa }
DEFINE_GUID(IID_ILocalRegistry, 0x6d5140d3, 0x7436, 0x11ce, 0x80, 0x34, 0x00, 0xaa, 0x00, 0x60, 0x09, 0xfa); #define SID_SLocalRegistry IID_ILocalRegistry
#undef INTERFACE
#define INTERFACE ILocalRegistry
DECLARE_INTERFACE_(ILocalRegistry, IUnknown) { BEGIN_INTERFACE // *** IUnknown methods ***
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE;
// *** ILocalRegistry methods ***
STDMETHOD(CreateInstance)(THIS_ /* [in] */ CLSID clsid, /* [in] */ IUnknown * punkOuter, /* [in] */ REFIID riid, /* [in] */ DWORD dwFlags, /* [out] */ void ** ppvObj ) PURE; STDMETHOD(GetTypeLibOfClsid)(THIS_ /* [in] */ CLSID clsid, /* [out] */ ITypeLib ** ptlib ) PURE; STDMETHOD(GetClassObjectOfClsid)(THIS_ /* [in] */ REFCLSID clsid, /* [in] */ DWORD dwClsCtx, /* [in] */ LPVOID lpReserved, /* [in] */ REFIID riid, /* [out] */ void ** ppcClassObject ) PURE; };
#endif // __OBJEXT_H
#ifndef UNIX
#pragma pack(pop)
#endif
|