d3dcompiler_42.dll丢失导致游戏玩不了?教你如何下载和安装这个文件!
得,今天又折腾一个下午,总算把一个烦人的小问题给解决。想着还是记下来,免得以后忘,也给可能遇到的朋友提个醒。
事情是这样的,我想在电脑上跑一个稍微老点儿的游戏,或者是某个图形相关的软件来着,具体哪个记不太清,反正点开图标之后,没像往常一样顺利启动,而是“Duang”一下弹出来个错误提示框。上面模模糊糊写着一堆英文,但我一眼就盯住那个关键信息:d3dcompiler_* 文件找不到,或者丢失。
当时我就有点纳闷,这是个啥玩意儿?第一反应,是不是程序没装或者是我的电脑出啥毛病?老规矩,先重启大法试试。结果?没用,还是那个提示。
接着我就想,是不是这个程序本身有问题?干脆卸载重装一遍。吭哧吭哧卸载,再吭哧吭哧安装,弄完再点开,还是那个熟悉的错误框,提示缺 d3dcompiler_*。这下我就知道,问题不一定出在程序本身。
我盯着那个文件名 d3dcompiler_* 看半天,前面那个“d3d”看着有点眼熟。,想起来,这好像跟微软那个DirectX有点关系,就是搞游戏画面渲染啥的那一套东西。那这个“compiler”大概就是“编译器”的意思?估计是DirectX里面负责处理某些图形效果计算的一个组件。
既然跟DirectX有关,那是不是我的DirectX版本太老,或者缺点我记得以前装老游戏的时候,经常会提示要装特定版本的DirectX,比如DirectX 9.0c啥的。现在的系统虽然自带新版的DirectX,但有时候老程序就需要那些旧版里的特定文件。
思路一下就清晰。解决办法估计就是更新或者修复一下DirectX。我记得微软提供一个在线安装程序,叫啥“DirectX End-User Runtime Web Installer”来着。我就去找这个小工具。
找到之后,下载下来,体积不大。运行它,它就开始自己联网检查我系统里DirectX的状态,然后自动下载并安装缺少或者需要更新的组件。整个过程挺傻瓜的,基本上就是点几下“下一步”。
等它跑完,提示安装完成。我心里想着这下总该行。回到桌面,找到之前打不开的那个程序图标,深吸一口气,双击!
成!程序顺利启动,再也没有弹出那个缺少 d3dcompiler_* 的错误提示。
所以这回实践的结论就是:
- 以后再遇到提示缺少“d3d”开头,特别是像 d3dcompiler_* (xx是数字) 这种文件的时候,别慌。
- 很大概率是DirectX组件不完整或者版本不对。
- 最稳妥的办法就是去找微软官方的“DirectX End-User Runtime Web Installer”运行一遍,让它自动更新修复。
- 不建议随便从网上下载单个的 .dll 文件放到系统目录里,那样风险挺大的,容易搞出更多问题,或者下载到带病毒的文件。
好,今天就记录到这。虽然折腾点时间,但解决问题还是挺舒坦的。希望能帮到有需要的人。