现在的位置: 首页 > 综合 > 正文

afxstat_.h(164) : error C2143 syntax error : missing ‘;’ before ‘*’报错的解决

2013年05月20日 ⁄ 综合 ⁄ 共 1479字 ⁄ 字号 评论关闭

最近把TCPMP从EVC4.0移植到VS2005时在文件CEQID3Info.cpp的编译时总是出现以下的错误:

1>------ 已启动生成: 项目: VideoPlayer, 配置: Debug CE2443I (ARMV4I) ------
1>正在编译...
1>CGetID3Info.cpp
1>_CE_ACTIVEX was not defined because this Windows CE SDK does not have DCOM.
1> _CE_ACTIVEX could be caused to be defined by defining _CE_ALLOW_SINGLE_THREADED_OBJECTS_IN_MTA, but it is recommended that this be done only for single-threaded apps.
1>_ATL_NO_HOSTING was defined because _CE_ACTIVEX was not defined.
1>C:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\afxstat_.h(164) : error C2143: syntax error : missing ';' before '*'
1>C:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\afxstat_.h(164) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>C:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\afxstat_.h(164) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>C:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\afxstat_.h(205) : error C2504: 'CMap<KEY,ARG_KEY,VALUE,ARG_VALUE>' : base class undefined
1>        with
1>        [
1>            KEY=void *,
1>            ARG_KEY=void *,
1>            VALUE=void *,
1>            ARG_VALUE=void *
1>        ]
1>生成日志保存在“file://e:\Au1380_forVolo\Software_Design\R&D Projects\SourceCode\VideoPlayer\VideoPlayerAdapter\CE2443I (ARMV4I)\Debug\BuildLog.htm”
1>VideoPlayer - 4 个错误,0 个警告
========== 生成: 0 已成功, 1 已失败, 0 最新, 0 已跳过 ==========

解决方法:

#ifndef _VO_SDK_VERSION_
#include <AFXtempl.h>
#endif

 

改为

 

#ifndef _VO_SDK_VERSION_
// #include <afxwin.h>
// #include <afx.h>
#include <AFXtempl.h>
#endif
 

 

参考 资料:

点击打开链接

抱歉!评论已关闭.