所以我已经重新安装了directx11几次,甚至去了微软网站并获得了包含所有直接x cabinet文件的SDK包.任何人都知道为什么我一直得到这个错误呢?我知道它为什么这么说,但更多的是寻找它的解决方案.
1> c:\ users\_vaughn\documents\visual studio 2010\projects\myfirstapp\myfirstapp\main.cpp(5):致命错误C1083:无法打开包含文件:'d3dx11.h':没有这样的文件或目录
小智 31
这就是你需要在VS 2010中做的事情(它在VS 2008及更早版本中看起来有点不同):
转到项目的属性| 配置属性| VC++目录.通过添加DirectX头文件的路径来编辑名为Include Directories的行.至于2010年6月的SDK,它可能是这样的:
32位Win:C:\ Program Files\Microsoft DirectX SDK(2010年6月)\ Include
64位Win:C:\ Program Files(x86)\ Microsoft DirectX SDK(2010年6月)\ Include
接下来,您最有可能收到链接器错误(缺少.lib文件).只需转到项目的属性| 配置属性| VC++目录再次,但这次编辑库目录并添加到以下路径之一:
32位Win:C:\ Program Files\Microsoft DirectX SDK(2010年6月)\ Lib\x86
64位Win:C:\ Program Files(x86)\ Microsoft DirectX SDK(2010年6月)\ Lib\x64
如果您安装了其他版本的SDK或将其安装到非默认目录,则相应地更改给定路径.另外请确保将d3d11.lib(也可能是d3dx11.lib)添加到Linker | 额外的依赖关系.
一般规则是,只要你#include <>文件你的IDE需要知道在哪里找到它们.VC++目录是在Visual Studio中执行此操作的一种方法.但是单独包含头文件(在大多数情况下)是不够的 - 您需要告诉链接器在哪里查找这些头文件描述的预编译二进制文件.这是通过向库目录添加第二个路径来完成的.