BUG: "AtlReportError: no overloaded function takes X parameters"ID: Q194861
|
Porting an ATL 2.x project to ATL 3.0 might give you the following compilation error:
error C2661: 'AtlReportError' : no overloaded function takes 2 parameters.
AtlReportError() does not have any default parameters in ATL 3.0. AtlReportError() in ATL 2.1 did have default parameters.
Specify all the parameters required by AtlReportError() or complete the
following steps:
return AtlReportError(
CLSID_PolyCtl, _T("Must have between 3&100 sides"));
with:
// If your class is derived from CComCoClass<CMyClass,
// &CLSID_MyClass>:
return Error(_T("Must must have between 3 & 100 sides"));
// If not derived from CComCoClass<>:
return CComCoClass<CMyClass, &CLSID_MyClass>::Error(
_T("Must must have between 3 & 100 sides"));
inline HRESULT WINAPI AtlReportError(const CLSID& clsid, UINT nID,
const IID& iid, HRESULT hRes, HINSTANCE hInst)
with:
inline HRESULT WINAPI AtlReportError(const CLSID& clsid, UINT nID,
const IID& iid = GUID_NULL, HRESULT hRes = 0,
HINSTANCE hInst = _Module.GetResourceInstance())
inline HRESULT WINAPI AtlReportError(const CLSID& clsid, UINT nID,
DWORD dwHelpID, LPCOLESTR lpszHelpFile, const IID& iid, HRESULT
hRes,
HINSTANCE hInst)
with:
inline HRESULT WINAPI AtlReportError(const CLSID& clsid, UINT nID,
DWORD dwHelpID, LPCOLESTR lpszHelpFile, const IID& iid =
GUID_NULL,
HRESULT hRes = 0, HINSTANCE hInst = _Module.GetResourceInstance())
inline HRESULT WINAPI AtlReportError(const CLSID& clsid,
LPCSTR lpszDesc, DWORD dwHelpID, LPCSTR lpszHelpFile, const IID&
iid,
HRESULT hRes)
with:
inline HRESULT WINAPI AtlReportError(const CLSID& clsid,
LPCSTR lpszDesc, DWORD dwHelpID, LPCSTR lpszHelpFile,
const IID& iid = GUID_NULL, HRESULT hRes = 0)
inline HRESULT WINAPI AtlReportError(const CLSID& clsid,
LPCSTR lpszDesc, const IID& iid, HRESULT hRes)
with:
inline HRESULT WINAPI AtlReportError(const CLSID& clsid,
LPCSTR lpszDesc, const IID& iid = GUID_NULL, HRESULT hRes = 0)
inline HRESULT WINAPI AtlReportError(const CLSID& clsid,
LPCOLESTR lpszDesc, const IID& iid, HRESULT hRes)
with:
inline HRESULT WINAPI AtlReportError(const CLSID& clsid,
LPCOLESTR lpszDesc, const IID& iid = GUID_NULL, HRESULT hRes = 0)
inline HRESULT WINAPI AtlReportError(const CLSID& clsid,
LPCOLESTR lpszDesc, DWORD dwHelpID,LPCOLESTR lpszHelpFile,
const IID& iid, HRESULT hRes)
with:
inline HRESULT WINAPI AtlReportError(const CLSID& clsid,
LPCOLESTR lpszDesc, DWORD dwHelpID, LPCOLESTR lpszHelpFile,
const IID& iid = GUID_NULL, HRESULT hRes = 0)
Microsoft has confirmed this to be a bug in the Microsoft products listed
at the beginning of this article.
(c) Microsoft Corporation 1998, All Rights Reserved. Contributions by
Jaganathan Thangavelu, Microsoft Corporation.
Additional query words:
Keywords : kberrmsg kbVC600bug kbATL300bug
Version : WINDOWS:3.0
Platform : WINDOWS
Issue type : kbbug
Last Reviewed: August 3, 1999