在CryEngine EaaS中出现Winres.h编译错误
Winres.h copilation error in CryEngine EaaS
我是Cryengine新手,我正试图为我的游戏构建自定义Game DLL
。但首先,我试着编译CryGameZero DLL
,我发现了一些编译错误。
我使用的是VS2013 Professional。
Error RC1015: cannot open include file 'winres.h'.
c:...CRYENGINEBinTemprc_filesCryGameZero.auto_gen.rc
10 1 CryGameZero
Error MSB3073: The command "cd /d
"c:...CRYENGINE" & cry_waf.exe
build_win_x86_profile --project-spec gamezero
--execsolution="c:...CRYENGINESolutionsCRYENGINE.sln"
--targets=CryGameZero" exited with code 1.
c:...CRYENGINE_WAF_msbuildwaf_build.targets
69 3 CryGameZero
我检查了我的 vc++目录,我有C:Program Files (x86)Windows Kits8.0includeum
但是winres.h
不在该目录中,所以我更改为C:Program Files (x86)Windows Kits8.1Includeum
, winres.h
位于何处,但我仍然得到相同的错误。
是否有人有同样的问题或知道如何解决这个问题。我在谷歌上搜索,但到目前为止,我找到了文档和教程,用旧版本的Cryengine没有WAF和使用VS2010或VS2012。
我找到了一个解决这个问题的方法。
这是一步一步的解决方案。首先检查WAF配置。
cry_waf.exe configure --auto-detect-verbose True
--generate-vs-projects-automatically False
在我的情况下,WAF是自动检测MSVC和Win SDK版本和四个
- MSVC 11.0
- MSVC 12.0
并自动将其设置为MSVC 11.0,因为它是列表中的第一个。Win SDK版本也是如此,找到
- SDK 8.0
- SDK 8.1
Amd自动设置为8.0
由于我使用的是Visual Studio 2013,根据Crytek文档,您需要设置MSVC和Win SDK的版本以适应您的VS版本
VS Version VC++ Version Recomended Win SDK
2012 11.0 8.0
2013 12.0 8.1
2015 14.0 10.0.10240.0
对于VS2015:早期安装的Visual Studio 2015可能已经安装了10.0.10150.0。在此场景中,重新运行Visual Studio安装程序并选择推荐的版本。
将其设置为合适的版本,清理解决方案并重新构建,一切都像需要的那样好。