前阵子在Steam上买了《赛博朋克2077》,这游戏我垂涎已久,但因为一直听说bug多,等到几个大版本更新后才下手。下载安装完成的那天,我特意早早结束工作,洗了把脸,然后点开Steam,按下“开始”按钮。指针转了一圈,然后没了动静。游戏窗口没出现,没有任何报错对话框,就好像我按下的只是一个装饰。
我开始以为是Steam抽风,退出重新进库,又试了一次。还是不行。我反复试了五六次,心里从疑惑变成愤怒,最后化作无奈。我买了游戏却不能玩,这种感觉比被诈骗了还难受。我狠抽了一口烟,下定决心要把它搞定。
按照“常规方案”轮番上阵
我第一反应就是验证游戏文件完整性。Steam这个功能百试百灵,至少对常见的文件缺失问题很有效。我右键游戏,属性,本地文件,验证游戏文件完整性。几秒钟后提示所有文件验证成功。我信心满满地点启动——结果教我做人。游戏依然沉默。
于是我开始升级疗法:更新显卡驱动。我从NVIDIA官网下了最新驱动,选择“全新安装”,重启电脑。然后再次打开Steam,启动游戏。光标旋转,然后,没有然后。我不甘心,又把驱动回滚到一个较稳定的版本,还是不行。我甚至拿DDU彻底清除了驱动再安装,结果依旧。那一刻我感觉我像在和空气斗智斗勇。
接下来几天,我把当年看过的各种疑难杂症解决方案都试了个遍。关闭Windows Defender实时保护,退出所有杀毒软件(包括360、火绒、腾讯管家),把游戏库移到另一个盘符,用Steam自带的“移动到新库”功能;更改Windows的虚拟内存设置;以管理员身份运行Steam和游戏;甚至尝试使用Windows的兼容模式(Windows 7、Windows 8),全都没用。每试一种方法我都重启电脑,然后屏住呼吸按启动,最后听着风扇转速回落的声音心情跌倒谷底。
后来我开始怀疑是系统运行库出了问题。于是我去微软官网下载了最新的DirectX运行库和Visual C++合集,全部安装一遍。又下载了“DirectX修复工具”增强版,扫描修复了一遍。然而现实依旧残酷,我甚至开始考虑重装Windows。
深度探索:系统组件和日志
但在那之前,我想到一个几乎所有Windows老鸟都会推荐的工具:事件查看器。它就像一个黑匣子,记录着系统所有软件的死亡细节。我打开事件查看器(Win+R,输入eventvwr.msc),展开“Windows日志”,点击“应用程序”。我让Steam再次启动游戏,然后立即切换到事件查看器刷新。果然,就在游戏结束进程的时间点,有一条红色的错误事件。事件ID 1000,显示是Intel(R)显卡驱动相关的错误?不对,仔细看是一个权限问题:描述是游戏试图访问C:\ProgramData\某个文件夹被拒绝,错误代码0x00000005。我眼前一亮。
我打开那个文件夹,属性-安全,仔细一看,User账户的权限确实被部分限制。我记得我前两天用SystemCare清理系统,可能是它自作聪明锁定了权限。我立即修改权限,给当前登录账户赋予完全控制权。确定修改后,我再次启动游戏,心跳得比相亲还快。动画浮现,音乐响起,游戏界面出来了!我直接在椅子上蹦了起来,长舒一口恶气。
事后回想,这三天虽然痛苦,但最后找到问题根源时的那份喜悦让我对电脑技术又多了几分敬畏。我现在可以愉快地玩了,而且每次打开游戏都会在心里默默感谢那个不放弃的自己。