catalogwrapper.h

来自「中间件编写示例 COM与.NET组件服务」· C头文件 代码 · 共 49 行

H
49
字号
// CatalogWrapper : Declaration of the CCatalogWrapper

#ifndef __CATALOG_WRAPPER_
#define __CATALOG_WRAPPER_
     
#include "resource.h"       // main symbols
#include "ES2.h"

/////////////////////////////////////////////////////////////////////////////
// CCatalogWrapper
class  CCatalogWrapper : 
	public CComObjectRootEx<CComMultiThreadModel>,
	public CComCoClass<CCatalogWrapper,&CLSID_CatalogWrapper>,
   public ITransientSubscription,
	public IFilterInstaller
{
public:
	CCatalogWrapper();
	~CCatalogWrapper();
   HRESULT FinalConstruct();
   void FinalRelease();

   DECLARE_REGISTRY_RESOURCEID(IDR_CATALOGWRAPPER)

   DECLARE_PROTECT_FINAL_CONSTRUCT()

BEGIN_COM_MAP(CCatalogWrapper)
	COM_INTERFACE_ENTRY(ITransientSubscription)
	COM_INTERFACE_ENTRY(IFilterInstaller)
END_COM_MAP()

public:
// ITransientSubscription
   STDMETHOD(Add)(LPCWSTR pwzSubName,CLSID clsidEventClass,REFIID iidInterface,IUnknown *pSink);
   STDMETHOD(Remove)(LPCWSTR pwzSubName);
   STDMETHOD(AddFilter)(LPCWSTR pwzSubName,LPCWSTR pwzCriteria);
   STDMETHOD(RemoveFilter)(LPCWSTR pwzSubName);

// IFilterInstaller
   STDMETHOD(Install)(CLSID clsidEventClass,CLSID clsidFilter);
   STDMETHOD(Remove)(CLSID clsidEventClass);
};

#endif //__CATALOG_WRAPPER_

/////////////////////////////////////////////////////////////////////////////
// CCatalogWrapper

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?