不再找到 DirectX 命名空间

Not finding DirectX namespace anymore

Visual Studio 专业 2013

Windows 7

x32、x64 处理器

我正在使用 DirectX 11,似乎遇到了一个奇怪的问题。我始终能够在我的应用程序中访问 DirectX 名称空间。这已不再是这种情况。我可以做一个简单的 class 说

// A.h

#include <d3d11.h>
#pragma comment(lib, "d3d11.lib")

class A {

}

如果我尝试使用完全引用的类型

DirectX::ID3D11Device* mDevice;

我也没有使用智能感知显示 DirectX 命名空间。

最重要的是,我可以使用

ID3D11Device* device;

在 class 中没有问题,所有编译都很好。

Visual Studio 2013 Profesional 找到 d3d11.h 文件的路径是

C:\Program Files (x86)\Windows Kits.1\Include\um

知道为什么会这样吗?我找了很多地方都没有找到相同性质的东西。

标准 Windows Win32 API 在 'global' 命名空间中。

DirectX C++ 命名空间被 DirectXMath, DirectX Tool Kit, DirectXTex, and DirectXMesh 使用。基本上我是作者的所有内容:)

DX C++ 命名空间中有一些助手,用于 Windows 8 Store、Windows phone、Xbox One、 Windows 通用 Windows 应用 Windows 10 StepTimer and ThrowIfFailed, which is also used in my unofficial Windows desktop VS template.

Windows 运行时 (WinRT) API 位于标准 WindowsMicrosoft C++ 命名空间中,遵循最初为 .NET 组件创建的命名约定。