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

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顺序)。

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


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

先是 

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

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

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

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


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


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

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


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

确定后重新编译,顺利完成。


你可能感兴趣的:(cocos2d-x)