// DSConnObj.h : Declaration of the CDsconnObject
#include "resource.h" // main symbols
/////////////////////////////////////////////////////////////////////////////
// DSConn
class CDsconnObject :
public CComDualImpl<IDsconn, &IID_IDsconn, &LIBID_DsconnLib>,
public ISupportErrorInfo,
public CComObjectRoot,
public CComCoClass<CDsconnObject,&CLSID_DsconnSrv>
{
public:
CDsconnObject() { Path=SysAllocString(L"<none>");}
BEGIN_COM_MAP(CDsconnObject)
COM_INTERFACE_ENTRY(IDispatch)
COM_INTERFACE_ENTRY(IDsconn)
COM_INTERFACE_ENTRY(ISupportErrorInfo)
END_COM_MAP()
//DECLARE_NOT_AGGREGATABLE(CDsconnObject)
// Remove the comment from the line above if you don't want your object to
// support aggregation. The default is to support it
DECLARE_REGISTRY(CDsconnObject, _T("DSCONN.DsconnObject.1"), _T("DSCONN.DsconnObject"), IDS_DSCONNOBJECT_DESC, THREADFLAGS_BOTH)
// ISupportsErrorInfo
STDMETHOD(InterfaceSupportsErrorInfo)(REFIID riid);
// IDsconn
public:
STDMETHODIMP get_Path (BSTR* retval);
STDMETHODIMP CDsconnObject::put_Path (BSTR ObjectPath);
STDMETHODIMP get_CurrentObject (IUnknown** retval);
STDMETHODIMP get_Object(BSTR OleDsPath,IUnknown** retval);
BSTR Path;
};