在用URLDownloadToFile时, 需要实现IBindStatusCallback接口 的OnPrgess接口,
我定义类,继承了IBindStatusCallback, class CDD : public IBindStatusCallback
{
public:
HRESULT OnProgress(ULONG ulProgress,ULONG ulProgressMax,ULONG ulStatusCode,LPCWSTR szStatusText);
CDD();
virtual ~CDD();
};错误信息:
error C2555: 'CDD::OnProgress' : overriding virtual function differs from 'IBindStatusCallback::OnProgress' only by return type or calling convention
d:\program files\microsoft visual studio\vc98\include\urlmon.h(1124) : see declaration of 'IBindStatusCallback',,为什么????
我定义类,继承了IBindStatusCallback, class CDD : public IBindStatusCallback
{
public:
HRESULT OnProgress(ULONG ulProgress,ULONG ulProgressMax,ULONG ulStatusCode,LPCWSTR szStatusText);
CDD();
virtual ~CDD();
};错误信息:
error C2555: 'CDD::OnProgress' : overriding virtual function differs from 'IBindStatusCallback::OnProgress' only by return type or calling convention
d:\program files\microsoft visual studio\vc98\include\urlmon.h(1124) : see declaration of 'IBindStatusCallback',,为什么????
你这里需要把OnProgress声明为STDMETHODCALLTYPE,不加它时是C++ calling convention
HRESULT STDMETHODCALLTYPE OnProgress(
/* [in] */ ULONG ulProgress,
/* [in] */ ULONG ulProgressMax,
/* [in] */ ULONG ulStatusCode,
/* [in] */ LPCWSTR szStatusText);
参考IBindStatusCallback的定义
参考IBindStatusCallback的定义??? 不懂, IBindStatusCallback的定义很简单, 没有什么可以看的,