#pragma once

namespace ComSupport
{
	class IComEvtClient
	{
	public:
		virtual HRESULT OnEvent( 
				/* [in] */ DISPID dispIdMember,
				/* [in] */ REFIID riid,
				/* [in] */ LCID lcid,
				/* [in] */ WORD wFlags,
				/* [out][in] */ DISPPARAMS *pDispParams,
				/* [out] */ VARIANT *pVarResult,
				/* [out] */ EXCEPINFO *pExcepInfo,
				/* [out] */ UINT *puArgErr) = 0;
	};

	class IComEvtClient2
	{
	public:
		virtual HRESULT OnEvent( 
				DWORD dwObjID,
				const _bstr_t& strCP_Name,
				const _bstr_t& strIdMember,
				const CArray<CComVariant,CComVariant&>& arrArgs
				) = 0;
	};
};
