如果您遇到这种情况,那是因为 DXGI_ERROR_DEVICE_HUNG 消息或其近亲 DXGI_ERROR_DEVICE_REMOVED(代码为 0x887A0006 和 0x887A0005)让您抓狂,而且每个游戏会话都会在桌面上毫无警告地结束。 我理解你:它们是危险的错误,它们出现在特定的标题中,有时你甚至不必重新安装它们。 Windows 坟墓在本指南中,您将找到对其他玩家在非常相似的情况下有效的现实原因和解决方案的详细汇编。
以下内容摘自几个真实案例: 使命召唤:从拥有高端装备的 Warzone/MW3 到在 NVIDIA 测试版应用中启用新功能时看到错误的 Microsoft Flight Simulator 用户。 它包括经过验证的步骤,例如启用 NVIDIA 调试模式、编辑注册表(TdrLevel)、禁用 DX12、修复游戏,甚至调整 nvlddmkm.sys 文件的权限。材料很多,但我们会按逻辑顺序逐步讲解,这样您就不会再浪费时间。
DXGI_ERROR_DEVICE_HUNG (0x887A0006) 和 DXGI_ERROR_DEVICE_REMOVED (0x887A0005) 是什么
这两个代码都表明 Windows 图形子系统 (DXGI) 检测到 GPU 没有按预期响应,或者图形设备在逻辑上已“断开连接”。 实际情况是:游戏与显卡失去通信,Windows 尝试通过重新启动驱动程序来恢复它。如果失败,则强制关闭并显示错误消息。
其中存在细微差别:0x887A0006(DEVICE_HUNG)通常与挂起的游戏或驱动程序命令有关;0x887A0005(DEVICE_REMOVED)表示驱动程序已重新启动或 GPU 已变得不可用。 在《使命召唤》等特定游戏中,您有时会看到著名的 6068,这是与同一问题相关的引擎的另一个内部代码。.
您可能熟悉的真实案例

一位拥有高端 PC 的用户在经过几天的测试后,在 Warzone/MW3 中再次遇到了故障:i9-13900K、RTX 2080 Ti MSI Lightning Z、32 GB DDR5 6600, SSD M.2 三星 EVO 2 TB、华硕 ROG Z790 主板和 Windows 11 首页。 尝试从头重新安装 Windows, 将 DDU 与图形驱动程序结合使用 (最新,526、537),禁用 XMP,使用 MSI Afterburner 以 50/100/150/200 MHz 为步长进行降压/降频,重新安装游戏,以管理员身份运行,触摸注册表中的 DirectX 键,验证文件,甚至将 GPU 更改为 RTX 2070 Super。没有:只有 Warzone/MW3 掉落;其余的都完美。
经过深思熟虑,那个人找到了一个挽救的组合:在 NVIDIA 控制面板(帮助菜单)中激活调试模式并授予该文件完全权限。 nvlddmkm.sys 在 System32 中的 DriverStore 路径内(属性 > 安全)。 然后他连续玩了三场游戏,没有一次崩溃,并且从 Battle.net 启动器切换到 蒸汽。我把它留在笔记中,以便那些同样陷入困境的人能够看到。
另一位玩家每 20 分钟就会遇到一次崩溃,他尝试调整注册表中的 TdrDelay、运行 DDU 并降低图形设置,但都没有成功。 您的设备:GTX 980 SLI、i7-4790K(4,5GHz)、16GB 内存和 1440p 显示器这是一个典型的例子,多 GPU 配置或历史超频最终会对现代 API 造成损害。
在 Microsoft Flight Simulator 中,拥有 RTX 4070 Super 和测试版应用程序 NVIDIA_app_beta_v10.0.1.253 的人发现,启用 RTX Dynamic Vibrance 总是会导致模拟器崩溃,并出现 dxgi_error_device_hung (0x887A0006)。 立即解决方案:在 NVIDIA 测试版应用程序中禁用 RTX Dynamic Vibrance 是一种灵丹妙药。.
最糟糕的是,在最近的游戏中(例如《怪物猎人荒野》)出现了致命的 D3D 错误,例如“致命的 D3D 错误(24,DXGI_ERROR_DEVICE_REMOVED,0x887a0005)”。 该模式重复:驱动程序重新启动或与 GPU 的通信被切断。.
发生原因:最常见的原因
在大多数情况下,问题不只是“一件事”。它通常是驱动程序、GPU 时钟/电压、游戏/启动器细节以及 TDR 等 Windows 看门狗的组合。 这些是我们在之前的案例中看到的最常见的触发因素。:
- 超频/欠压不稳定 在 GPU 或 CPU 上,即使您已经能够连续几个月玩其他游戏而没有任何问题。
- 视频驱动程序故障 在特定版本或更改后的残留物中(因此为 DDU)。
- 实验功能 (例如 NVIDIA 测试版应用中的 RTX Dynamic Vibrance)导致不稳定。
- 原料药:DX12 在某些引擎上会更加细腻;DX11 则趋向于更加保守。
- 多 GPU 配置 (SLI/混合)和错误的 GPU 选择 手提 带有专用 iGPU +。
- 看门狗 TDR 如果图形任务花费的时间“太长”,Windows 会重新启动驱动程序。
- 许可证/财产 来自 nvlddmkm.sys 驱动程序或损坏的游戏文件。
- 叠加层和屏幕截图 (Discord、GeForce Experience、Steam 等)干扰。
对其他玩家有效的解决方案
我建议从已证明最佳成功时间比的方法开始,然后再转向更具技术性的措施。 一次进行一项更改并测试几款游戏以确认。.
1)在 NVIDIA 上启用调试模式
此模式强制 GPU 参考时钟并禁用超频,甚至是工厂 OC。 右键单击桌面 > NVIDIA 控制面板 > 帮助菜单 > 调试模式. 保持其处于活动状态并测试游戏。
2)禁用实验性功能:RTX Dynamic Vibrance
如果您使用的是 NVIDIA 测试版应用程序(在本例中为 v10.0.1.253)并启用了 RTX Dynamic Vibrance,请取消选中它。 在 Microsoft Flight Simulator 中,它导致立即崩溃,错误代码 0x887A0006;禁用它可以避免崩溃。.
3)更换启动器或从其他平台重新安装
这看起来微不足道,但在 COD 中,有些人从 Battle.net 切换到 Steam 后就不再遇到错误。 启动器之间的二进制文件、反作弊、路径和依赖关系并不总是相同的如果可以的话,请尝试该替代方案。
4)修复游戏文件
损坏的文件 可能会导致对GPU的无效调用。 在 Steam 中:库 > 右键单击游戏 > 属性 > 本地文件 > 验证完整性。在 Epic 中:库 > 游戏菜单(三个点)> 管理 > 验证。
5)强制使用 DX11 并禁用 DX12
在具有 DX12 的不稳定游戏中,强制使用 D3D11 通常是天赐之物。 在 Epic 中,您可以在“设置”>“命令行参数”中添加 d3d11 参数. 在具有内部选择器的标题中,取消选中 DX12。
6)选择正确的GPU
在具有专用 iGPU + 的计算机上,确保游戏使用专用 iGPU +。 NVIDIA:控制面板 > 管理 3D 设置 > 程序设置 > 高性能 NVIDIA 处理器. 在 AMD Radeon 上:系统 > 可切换显卡 > 高性能 GPU。
7)干净的驱动程序和稳定的版本
使用 DDU 安全模式 去除残留物并尝试您知道在游戏中稳定的驱动程序(最新的并不总是最好的)。 在引用的案例中,最后 526 和 537 进行了测试;如果其中一个失败,则替换. 从 NVIDIA/AMD 官方网站下载。
8) 超频/欠压:恢复出厂设置
即使您的显卡温度不超过 75°C,轻微的调整也可能导致卡死。 恢复 MSI Afterburner/您的工具中的默认设置并暂时禁用 CPU/XMP OC。该用户尝试了 50/100/150/200 MHz 的欠压,但没有成功;库存 + 调试模式是关键。
9)禁用覆盖和屏幕截图
禁用 GeForce Experience、Steam、Discord 的覆盖, 的Xbox 游戏栏、Rivatuner/RTSS 等。 游戏层级越少,队列干扰的可能性就越小 comandos GPU.
10)以管理员身份运行游戏
授予提升的权限以防止拒绝访问。 右键单击 EXE > 属性 > 兼容性 > 以管理员身份运行此程序. 在某些标题中,它会在写入日志或缓存时删除愚蠢的块。
11)编辑注册表:TdrLevel = 0(高级)
Windows 包含 TDR(超时检测和恢复),如果驱动程序“挂起”几秒钟,它会重新启动它。 禁用它可能会阻止 重置 因此游戏结束了。步骤(仔细):
- 赢+ S,写道 输入regedit,右键单击并以管理员身份运行。
- 导航 HKEY_LOCAL_MACHINE \系统\ CurrentControlSet \控制\ GraphicsDrivers.
- 右键单击右侧区域 > 新建 > DWORD(32 位)值并命名 Tdr级别.
- 打开它并放入 值 = 0. 接受并重新启动电脑。
有些人尝试过使用 TdrDelay(扩展 El Temppo 等待),但设置 TdrLevel=0 会禁用检测。 警告:如果发生实际的驱动程序崩溃,您可能会看到屏幕冻结而不是恢复。使用它进行诊断;如果有效,则通过返回默认值来确认稳定性。
12)调整nvlddmkm.sys驱动程序的权限
有一个案例通过授予 System32 DriverStore 路径中的 NVIDIA 驱动程序文件的完全权限得到解决。 查看 C:\Windows\System32\DriverStore\… > 属性 > 安全 > 编辑并授予系统用户/玩家完全控制权. 应用、重启并测试。
13)硬件变更和稳定性测试
已经为其他人服务的有用测试:暂时切换到另一个 GPU,仅使用一个 RAM 模块启动,运行 CHKDSK, 孟斯特 y SFC / scannow. 在一个案例中,SFC 修复了文件,但游戏继续崩溃,这表明图形部分。不过,你还是摆脱了嫌疑人。
每个游戏/场景的具体说明
《使命召唤:战区》/《MW3》对轻微的 GPU 不稳定以及驱动程序 + 启动器版本组合特别敏感。 如果这种情况只发生在 COD 中,请尝试:从 Battle.net 切换到 Steam,将 GPU 保留在参考时钟(调试模式)、DX11(如果游戏允许)并禁用任何覆盖. 每次更改后检查文件。
在搭载 NVIDIA 测试版应用的 Microsoft Flight Simulator 中,已经看到了与 RTX Dynamic Vibrance 的直接关联。 直接解决方案:在应用程序中禁用该功能并确认错误 0x887A0006 消失如果问题仍然存在,请检查驱动程序和 DX11 作为 B 计划。
SLI 配置(例如 2x GTX 980)可能会间歇性地导致这些错误。 禁用 SLI/第二适配器并尝试使用单个 GPU;DX12 在老一代多 GPU 上很少能很好地扩展。。这也降低了“DEVICE_REMOVED”的概率。
在显示“致命 D3D 错误(24,DXGI_ERROR_DEVICE_REMOVED,0x887a0005)”等代码的引擎中,通常是驱动程序重置。 应用组合:库存时钟、稳定驱动程序、DX11、覆盖,如果继续,则 TdrLevel=0 来验证看门狗是否是罪魁祸首.
发疯前的快速检查清单
对于那些希望在 10 分钟内完成必需事项的人,这里有一个推荐的顺序。 如果中途修复了,就不要继续玩。:
- NVIDIA 调试模式 和工厂时钟(无 OC/UV)。
- DX11 强迫和 RTX 动态振动 如果您正在使用 NVIDIA beta,则禁用。
- 覆盖 输出(GFE、Discord、Steam、Xbox Game Bar、RTSS)。
- 修理/检查 来自启动器的文件。
- 使用 DDU 清理驱动程序 以及您游戏的已知稳定版本。
- 选择专用 GPU 在 NVIDIA/AMD 面板上。
- 作为一项高级测试, TdrLevel=0 然后重新启动。
尽管这些错误令人沮丧,但积累的经验表明,它们几乎总是由三大支柱的组合导致: 参考时钟(无 OC)、适合您游戏的“良好”驱动程序和干扰消除(如果出现问题,则覆盖/实验功能/DX12)如果您需要一个可靠的起点,请从 NVIDIA 调试模式开始,强制使用 DX11,修复文件并禁用覆盖。如果没有崩溃,请添加 TdrLevel=0 作为测试,并检查 nvlddmkm.sys 权限。耐心是有回报的:有些人连续三次游戏后,游戏崩溃次数从每次游戏一次下降到零次,在某些情况下,切换启动器是最后的解决办法。
对字节世界和一般技术充满热情的作家。我喜欢通过写作分享我的知识,这就是我在这个博客中要做的,向您展示有关小工具、软件、硬件、技术趋势等的所有最有趣的事情。我的目标是帮助您以简单而有趣的方式畅游数字世界。