添加永久包含目录

时间:2014-10-23 13:14:29

标签: visual-studio visual-c++ visual-studio-2013 directx

我试图建立一个包含数十个项目的解决方案,遗憾的是我无法在VS2013中找到一种方法来添加一个"全球"包括解决方案的目录,因为我需要包含Directx。

除了按项目逐个手动添加目录外,VS2013中除了添加目录之外,还有其他办法吗?

1 个答案:

答案 0 :(得分:2)

从VS 2010开始,将DirectX SDK添加到项目的正确方法是使用VC ++目录设置。有关详细信息,请参阅此old VC post

您还可以通过Property Manager使用自定义.props。例如,这就是将Windows 8.x SDK用于VS 2010的方法,因为Windows SDK不再为此工具组合创建平台工具集。请参阅this帖子。

历史上,包含路径顺序如下:因为DirectX SDK包含比Windows SDK 7.x及更早版本更新的标题:

$(DXSDK_DIR)Include;$(IncludePath)
$(DXSDK_DIR)Lib\x86 or x64;$(LibraryPath)

现在DirectX SDK is deprecated,VS 2012和VS 2013附带的Windows 8.x SDK包含较新的标头,而不是传统的DirectX SDK。因此,如果您仍然需要使用仅在DirectX SDK中的旧组件(例如不推荐使用的D3DX库),则需要使用:

$(IncludePath);$(DXSDK_DIR)Include
$(LibraryPath);$(DXSDK_DIR)Lib\x86 or x64

MSDN

还涵盖了一些细微的细节

对于Direct3D 11开发,无论如何都应该删除使用DirectX SDK以支持Windows 8.x SDK。请参阅Living without D3DXDirectXMath

如果使用XInput 1.3并且您仍需要定位Windows 7或更早版本,则可以选择使用XInput 9.1.0。见XINPUT and Windows 8DirectX Tool Kit GamePad在向下定位时使用此功能,以避免使用旧版DirectX SDK。

在新的Win32桌面应用中使用DirectX SDK仍然有意义的唯一情况是使用XAudio2并在Windows 7或更早版本上发货。见XAudio2 and Windows 8。在向下定位时,DirectX Tool Kit for Audio会使用此功能。

在使用XInput 1.3和XAudio 2.7的两种情况下,您实际上需要使用DirectX SDK头文件/库的完整路径,而不是依靠项目搜索路径来选择正确的头文件,因为它们与XInput 1.4和XAudio有名称冲突2.8 SDK在Windows SDK 8.x中。