Visual studio 将directx添加到include和library目录会引发300多个错误

Visual studio 将directx添加到include和library目录会引发300多个错误,visual-studio,dll,directx,directx-9,directx-10,Visual Studio,Dll,Directx,Directx 9,Directx 10,我现在正试图使用direct x 9/10,但一旦我添加 C:\Program Files %28x86%29\Microsoft DirectX SDK %28November 2008%29\Include 包括我的目录和 C:\Program Files %28x86%29\Microsoft DirectX SDK %28November 2008%29\Lib\x86 到我的库目录 我得到了397个错误,主要包括 identifier "__RPC__inout_xco

我现在正试图使用direct x 9/10,但一旦我添加

C:\Program Files %28x86%29\Microsoft DirectX SDK %28November 2008%29\Include
包括我的目录和

C:\Program Files %28x86%29\Microsoft DirectX SDK %28November 2008%29\Lib\x86 
到我的库目录

我得到了397个错误,主要包括

identifier "__RPC__inout_xcount" is undefined


我不明白是什么导致了我从未接触过的DLL中的所有这些错误,这些DLL位于我以前从未见过的文件夹中。非常感谢您提供的任何帮助

基本问题是,您必须颠倒include/lib路径搜索顺序,才能将旧版DirectX SDK与Windows 10 SDK结合使用

对于x86/Win32配置:

$(ExecutablePath);$(DXSDK_DIR)Utilities\bin\x86
$(IncludePath);$(DXSDK_DIR)Include
$(LibraryPath);$(DXSDK_DIR)Lib\x86
$(ExecutablePath);$(DXSDK_DIR)Utilities\bin\x64;$(DXSDK_DIR)Utilities\bin\x86
$(IncludePath);$(DXSDK_DIR)Include
$(LibraryPath);$(DXSDK_DIR)Lib\x64
对于x64本机配置:

$(ExecutablePath);$(DXSDK_DIR)Utilities\bin\x86
$(IncludePath);$(DXSDK_DIR)Include
$(LibraryPath);$(DXSDK_DIR)Lib\x86
$(ExecutablePath);$(DXSDK_DIR)Utilities\bin\x64;$(DXSDK_DIR)Utilities\bin\x86
$(IncludePath);$(DXSDK_DIR)Include
$(LibraryPath);$(DXSDK_DIR)Lib\x64
或者,您需要使用
v14?\u xp
平台工具集,该工具集使用Windows 7.1A SDK

旧版DirectX SDK设计用于VS2010附带的Windows 7 SDK或更早版本,而DirectX SDK现在已不推荐使用

见和

更好的选择是根本不使用传统的DirectX SDK,这意味着使用DirectX 11而不是旧的DX9/DX10 API。看

还有各种StackOverflow线程都是相同的基本问题:

一定要阅读


有一些不匹配。确保不删除默认包含,只需在默认值之后“添加”新包含即可。尝试将windows.h添加到源代码中的其他内容之前。检查这个:否则把你的项目放在互联网上,这样我们就可以检查它。