简介
想重新回味一款游戏时,有时会遇到游戏启动失败的情况,会想说奇怪之前还有在玩,怎
么突然开不起来,删除游戏重新安装还是找不出原因,十之八九是有DLL遗失了。
原理
DLL档是系统中的公用程式数据库,当游戏程式需要某些功能时,不用重写程式,只要存取
现有的DLL就好,可方便游戏设计的时间与简化程式复杂度。而有时会因为共用的某些原因
让DLL遗失,造成游戏在开启时的启动失败。
方法
以上可知,我们只需把遗失的DLL档找回就好,但常常没有显示足够的启动错误资讯,最简
单就是手动重新安装在游戏资料夹中_CommonRedist的vcredist(这里需注意你系统是64就
选x64、32就选x86),可补回基本一些用C++设计的DLL,而installscript.vdf就是游戏第
一次执行时自动判断要装那些的脚本,像有些游戏更新没注意到,每次开游戏会有鬼打墙
一直重复安装,把.vdf砍了就好。
进阶就是使用Process Explorer或Dependency Walker等免费工具来监视游戏执行的启动状
况,这程式就像是进阶版的工作管理员,可针对游戏列出使用中的DLL档,找出DLL档。
Process Explorer
https://docs.microsoft.com/zh-tw/sysinternals/downloads/process-explorer
View->Lower pane view->DLLs 开启监视DLL清单
https://i.imgur.com/47Lq5pF.png
Dependency Walker
http://www.dependencywalker.com/
File选好游戏执行档后,Profile->Start profile 或直接F7。跑一遍就会直接跟你说少了
什么DLL,下方也有讯息栏可知道游戏为何中断。
https://i.imgur.com/DXIern2.png
一点小心得跟大家分享。