此错误很可能是由于 PC 上的系统文件损坏或损坏所致。因此,在尝试其他一些解决方案之前,您可以尝试修复损坏的系统文件。为此,您可以使用 Windows 中称为系统文件检查器(SFC)的内置实用程序。它是一种基于命令的工具,可扫描您的系统中是否存在损坏或损坏的系统文件,并将它们恢复到正常状态。您可以尝试通过命令提示符运行 SFC 扫描,然后检查问题是否已解决。
以下是在 Windows 11/10 上运行 SFC 扫描的步骤:
SFC /scannow
如果执行 SFC 扫描不能解决您的问题,请尝试本教程中的下一个潜在方法。
如果上述方法没有为您修复错误,您可以尝试重新注册 D3D11.dll 文件,然后看看它是否可以帮助您摆脱错误。此方法已被证明可以修复某些受影响用户的错误,并且可能也适用于您。您可以使用称为Regsvr32工具的Windows 内置实用程序来重新注册 DLL 文件。它是一个命令行工具,可让您在 Windows 中注册和取消注册 OLE 控件,如 DLL 或 OCX 文件。
以下是在 Windows 11/10 PC 上重新注册 D3D11.dll 文件的主要步骤:
首先,从任务栏搜索选项中打开具有管理员权限的命令提示符。在搜索框中键入 CMD,将鼠标悬停在命令提示符应用程序上,然后选择以管理员身份运行选项。
接下来,在 CMD 中键入以下 DLL 重新注册命令:
for %d in (*.dll) do regsvr32 -s %d
之后,按 Enter 按钮并等待命令完全执行。
命令完成后,关闭 h CMD 窗口,然后重新启动系统。
在下次启动时,检查“D3D11.dll 不是设计为在 Windows 上运行或它包含错误”错误现在是否已修复。
如果这没有给您带来任何运气,我们还有另一种方法来修复错误。因此,继续进行下一个可能的修复以解决错误。
如果上述解决方案不能为您修复错误,您可以尝试用新副本手动替换 D3D11.dll。一些用户能够使用此方法解决错误,您也可以尝试这样做。
请注意,我们在 Windows 上有两个不同的 d3d11.dll 文件 –
对于 64 位 Windows,我们将替换位于 SysWOW64 文件夹内的 d3d11.dll 文件。
警告:在尝试此方法之前,您需要确定自己在做什么。因为这些步骤需要一些技术操作,并且您必须熟悉命令提示符才能执行此解决方案。如果执行不正确,可能会导致您的 PC 出现一些问题。因此,如果您对自己正在做的事情有信心,请选择这种方法。
现在,这里是手动用本地副本替换 d3d11.dll 文件的步骤:
takeown /f C:\\Windows\\SysWOW64
对于拥有 32 位架构 PC 的用户,请将 SysWow64 替换为 SysWow。
C:\\Windows\\System32\\en-US\\winload.exe.mui /G *TWC*:F
在上面的命令中,将 *TWC* 替换为您的用户名。
C:\\Windows\\WinSxS\\wow64_microsoft-windows-directx-direct3d11_31bf3856ad364e35_10.0.22000.120_none_f5722a07873a5925
从这里复制干净的 d3d11.dll 文件。如果没有任何帮助,您可以下载 Microsoft DirectX并将其重新安装到您的 Windows 系统上。