我正在尝试使用以下说明构建一些使用 XAudio2 并在 Windows 7 上运行的代码:
http://msdn.microsoft.com/en-us/library/windows/desktop/ee663275%28v=vs.85%29.aspx
正如建议的那样,我包含了 DirectX SDK 中的 XAudio2.h:
#include <%DXSDK_DIR%Include\xaudio2.h>
结果:
fatal error C1083: Cannot open include file: '%DXSDK_DIR%Include\xaudio2.h': No such file or directory
那好吧。我很确定 VC++ 并没有像那样扩展环境变量。所以我用#include
直接包含它的替换了:
#include <C:/Program Files (x86)/Microsoft DirectX SDK (June 2010)/Include/XAudio2.h>
(其他一些也建议使用完整路径的说明可以在这里找到:http: //blogs.msdn.com/b/chuckw/archive/2012/04/02/xaudio2-and-windows-8-consumer-预览.aspx )
结果:
c:\program files (x86)\microsoft directx sdk (june 2010)\include\xaudio2.h(20): fatal error C1083: Cannot open include file: 'comdecl.h': No such file or directory
果然,该文件包括comdecl.h
使用尖括号,指示 VC++ 查看当前文件夹之外的内容。
然后,我将 DirectX SDK 包含文件夹 ( $(DXSDK_DIR)/include
) 添加到项目 #include 搜索路径中,保留 #include 原样,并且:
c:\program files (x86)\microsoft directx sdk (june 2010)\include\dxgitype.h(12): warning C4005: 'DXGI_STATUS_OCCLUDED' : macro redefinition
c:\program files (x86)\windows kits\8.0\include\shared\winerror.h(49449) : see previous definition of 'DXGI_STATUS_OCCLUDED'
(...ad infinitum)
(我的项目也包括 DirectX 标头。)
如果我将 DirectX SDK 包含文件夹添加到搜索路径列表的另一端,则结果相同。
在遵循这些(或任何其他)说明的同时,是否有人设法让其中任何一项工作?