// TheCoClass.h : Declaration of the CTheCoClass

#ifndef __THECOCLASS_H_
#define __THECOCLASS_H_

#include "resource.h"       // main symbols

/////////////////////////////////////////////////////////////////////////////
// CTheCoClass
class ATL_NO_VTABLE CTheCoClass : 
	public CComObjectRootEx<CComSingleThreadModel>,
	public CComCoClass<CTheCoClass, &CLSID_TheCoClass>,
	public IDispatchImpl<IBasicAccess, &IID_IBasicAccess, &LIBID_BASICATLSERVERLib>
{
public:
	//
	CTheCoClass()
	{
		m_theString="Initial string";
	}

DECLARE_REGISTRY_RESOURCEID(IDR_THECOCLASS)

DECLARE_PROTECT_FINAL_CONSTRUCT()

BEGIN_COM_MAP(CTheCoClass)
	COM_INTERFACE_ENTRY(IBasicAccess)
	COM_INTERFACE_ENTRY(IDispatch)
END_COM_MAP()

// IBasicAccess
public:
	STDMETHOD(setString)(/*[in]*/ BSTR theString);
	STDMETHOD(getString)(/*[out,retval]*/ BSTR* theString);
protected:
	//
	CComBSTR m_theString;
};

#endif //__THECOCLASS_H_


Hosted by www.Geocities.ws

1