// Win32OleTestObj.h : CWin32OleTestObj の宣言 #ifndef __WIN32OLETESTOBJ_H_ #define __WIN32OLETESTOBJ_H_ #include "resource.h" // メイン シンボル ///////////////////////////////////////////////////////////////////////////// // CWin32OleTestObj class ATL_NO_VTABLE CWin32OleTestObj : public CComObjectRootEx, public CComCoClass, public IDispatchImpl { public: CWin32OleTestObj() : m_Name(SysAllocString(L"CWin32OleTestObj")) { } virtual void OnFinalRelease() { SysFreeString(m_Name); } DECLARE_REGISTRY_RESOURCEID(IDR_WIN32OLETESTOBJ) DECLARE_PROTECT_FINAL_CONSTRUCT() BEGIN_COM_MAP(CWin32OleTestObj) COM_INTERFACE_ENTRY(IWin32OleTestObj) COM_INTERFACE_ENTRY(IDispatch) END_COM_MAP() BSTR m_Name; // IWin32OleTestObj public: HRESULT STDMETHODCALLTYPE get_Name( /* [retval][out] */ BSTR __RPC_FAR *pResult); HRESULT STDMETHODCALLTYPE put_Name( /* [in] */ BSTR newName); HRESULT STDMETHODCALLTYPE OptArgs( /* [in] */ long param1, /* [in] */ long param2, /* [optional][in] */ VARIANT optArg, /* [retval][out] */ long __RPC_FAR *pResult); HRESULT STDMETHODCALLTYPE Args( /* [in] */ long param1, /* [in] */ long param2, /* [retval][out] */ long __RPC_FAR *pResult); HRESULT STDMETHODCALLTYPE VarArgs( /* [in] */ long param1, /* [in] */ SAFEARRAY __RPC_FAR * psa, /* [retval][out] */ long __RPC_FAR *pResult); }; #endif //__WIN32OLETESTOBJ_H_