怎么实现SetClientSite接口? 请高手帮忙!

guothreelove2003 2006-09-25 10:01:11
问题比较奇怪,我明明都写好了函数的定义和实现了,但编译时却报告这种错误。请大家帮帮忙,这里先给100分,我在这里http://community.csdn.net/Expert/topic/5044/5044648.xml?temp=.5452387 还开了个贴子,问题解决后两个贴子一起结。

头文件
class ATL_NO_VTABLE CSUploader :
public CComObjectRootEx<CComSingleThreadModel>,
public CComCoClass<CSUploader, &CLSID_SUploader>,
public ISupportErrorInfo,
public IOleObjectImpl<CSUploader>, //自己加的,可能不对
public IConnectionPointContainerImpl<CSUploader>,
public IDispatchImpl<ISUploader, &IID_ISUploader, &LIBID_SUPERUPLOADERLib>,
public CProxy_ISUploaderEvents< CSUploader >

{
public:
STDMETHOD (SetClientSite)(ConnectType eConnectType);

}

CPP文件:
STDMETHODIMP CSUploader::SetClientSite(ConnectType eConnectType)
{
return S_OK;
}


错误提示:
:\program files\microsoft visual studio\vc98\atl\include\atlctl.h(1661) : error C2039: 'IOleObject_SetClientSite' : is not a member of 'CSUploader'
d:\mycode\superuploader\suploader.h(42) : see declaration of 'CSUploader'
d:\program files\microsoft visual studio\vc98\atl\include\atlctl.h(1658) : while compiling class-template member function 'long __stdcall ATL::IOleObjectImpl<class CSUploader>::SetClientSite(struct IOleClientSite *)'
SUploader.cpp
...全文
232 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
wildmen 2006-09-26
  • 打赏
  • 举报
回复
BEGIN_COM_MAP(CATLDiceObj)
COM_INTERFACE_ENTRY(IViewObject) //缺少这个,加上。
END_COM_MAP()

3,245

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧