Visual Studio 2013 迁移:无法打开包含文件:'dxerr8.h':没有这样的文件或目录

Posted

技术标签:

【中文标题】Visual Studio 2013 迁移:无法打开包含文件:\'dxerr8.h\':没有这样的文件或目录【英文标题】:Visual studio 2013 Migration : Cannot open include file: 'dxerr8.h': No such file or directoryVisual Studio 2013 迁移:无法打开包含文件:'dxerr8.h':没有这样的文件或目录 【发布时间】:2015-05-25 09:57:38 【问题描述】:

我在 Visual Studio 2003 中编写了一个使用 DirectX 库的 VC++ 应用程序 在我的应用程序中使用“dxerr8.h”来提供 DirectX 消息的跟踪。

我可以在以下路径中找到该文件

“C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\PlatformSDK\Include\dxerr8.h”

现在我正在将我的应用程序迁移到 Visaul Studio 2013,这会引发编译错误

无法打开包含文件:'dxerr8.h':没有这样的文件或目录

我在 Visual Studio 2013 安装文件夹中搜索了该文件,但该文件丢失了。

“C:\Program Files\Microsoft Visual Studio 12.0\VC”

    PlatformSDK 文件夹在哪里? 是否需要安装 DirectX SDK 才能消除此错误?

如何解决这个问题?

【问题讨论】:

DirectX 发展非常迅速,您的目标版本已经 15 岁了。那是 3 条狗的生活,不再被 SDK 覆盖,是时候更新了。 【参考方案1】:

当前 SDK 有DXGetErrorString 功能。从代码中的所有名称中删除“8”应该可以解决您的问题。

【讨论】:

我正在使用 DXTRACE_ERR( TEXT("DirectSoundCreate8"), hr );跟踪消息。我也尝试从头文件中删除 8 。这并不能解决问题。 我猜,你没有 DirectX SDK。你能验证一下吗?您可以查看msdn.microsoft.com/en-us/library/windows/desktop/… 了解如何检查您是否需要 SDK。 我希望它是Windows SDK的一部分,所以不需要单独安装DirectX SDK【参考方案2】:

DXERR8 最后一次在 DirectX SDK 中发布(2007 年 8 月)。在任何情况下,DXERR 都会取代这个旧库的所有用途。

请参阅 Where’s DXERR.LIB? 以替代 DXERR,避免使用旧版 DirectX SDK。

【讨论】:

以上是关于Visual Studio 2013 迁移:无法打开包含文件:'dxerr8.h':没有这样的文件或目录的主要内容,如果未能解决你的问题,请参考以下文章

将 Visual C++ 项目迁移到 Visual Studio 2013 - DirectShow 基类错误 C2169

在 3.5 而不是 2.0 中编译的类库 - 从 Visual Studio 2008 迁移到 2013

Nuget PM Visual Studio Express v2013 中的错误

使用 MSBuild 从 Visual Studio 2013 命令行发布 Clickonce 找不到 SignTool.exe

从 Visual Studio 2013 转换到 Visual Studio 2015 的问题

由于 dotnet ef dbcontext --json 失败,无法在 Visual Studio 2019 中列出实体框架迁移