您的位置:首页 > 移动开发 > Cocos引擎

cocos2d-x 在IDE vs2010 出现error C2146: 语法错误: 缺少“;”(在标识符“PVOID64”的前面)编译错误解决方案

2013-11-14 10:04 447 查看
cocos2d-x 较高版本用到的IDE平台 vs2010 , 安装了vs2010旗舰版.

打开运行cocos2d-x-2.2.0中的HelloCpp项目,居然报错:

error
C2146: c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h  语法错误: 缺少“;”(在标识符“PVOID64”的前面)

error C4430:

c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h  缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int 

这两错误是系统配置的问题,网上查找
说是vs的include顺序问题,也有人说既然是找不到PVOID64加个typedef就行了。

对于第二种方法当然是排除(系统文件可不能乱改)。

于是寻求第一种解决方案。

开始的坑人的排雷过程:依别人的做法:

在vs中,选择
工具->选项->项目和解决方案->VC++
目录,在 显示以下内容的目录 选择 包含文件,确保条目 $(WindowsSdkDir)\include 和 $(FrameworkSDKDir)include 在任何dx目录的前面。

我打开一看,我的妈啊
,编辑被否决了。(如果你幸运的话 就直接在这更改nclude顺序)。



不让改, 对于IDE不是很熟的我只能google起 visual c++ 2010  VC++目录编辑功能已被否决. 那过程别提了

先是 

在vs的解决方案资源管理器中右键相应的项目,选择属性,在属性窗口的
配置属性 -> C/C++ -> 常规 中的 附加包含目录







发现在这改 只能此项目本身, 无法全局改变。于是又找了全局更改的方法

对于某一项目, 点击菜单:视图-》属性管理器, 弹出属性管理器窗口,点击项目展开如图:



右击Microsoft.Cpp.Win32.user 弹出属性页 如图



 将原本的放在最后的 $(IncludePath) 这宏放到最前面, 将E:\Program Files\DXSDK\Include; 更改放在第二位置上。

确定后重新编译,顺利完成。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐