前言
我真是被Windows的蓝屏整烦了,一蓝屏把我工作全部报废,写好的东西还要往前回溯几分钟重来,当我想要彻底解决这个问题的时候,没等我看清蓝屏代码然后就自动重启了。
最恨的事我居然还不知道它是因为什么原因产生的,某天我就想到一个问题,为什么我不能从问题的源头解决掉它呢?
无非就是几个问题,硬件,驱动,软件等等……
说干就干,网上找了很多资料,最后总结出了两个可以稳定发现并且解决大部分蓝屏的方法。
日志
查看日志是最简单的方法,前提是出错得很慢,经过几轮错误然后才蓝屏,这样子很方便可以从日志里面看出错误来。
虽然不太稳定,但是这确实是最简单可以捕捉到最简单蓝屏的方法了。
查看事件查看器
这里我们对此电脑右键,然后在出现的菜单里面点击管理选项。
如果你是Windows11可能得点击展开更多选项进行查看。
我们在打开的计算机管理里面左边侧栏依次点击事件查看器→Windows日志→系统选项下面,右边的内容即是我们需要查看的系统日志。
我们应该可以在中间的日志翻到刚刚蓝屏的时间点,然后应该可以看到一个名叫关键的事件,应该是指未正常关机的事件。
这时候我们继续往下面翻,应该就可以找到具体出错的原因,解决对应的问题即可。
如果你和我一样,很不幸没有,在突然蓝屏前一切正常,那也没关系,我们接下来还有另外一个方法。
Dump转储文件
Dump转储文件就相当于将错误状态时候的一些信息保存下来给开发人员排查错误用的,能查看到的信息比蓝屏界面和日志多很多。
配置转储文件
Win+R键打开运行窗口,输入 sysdm.cpl
,然后回车确认
我们在新打开的系统属性窗口里面选择高级,启动和故障恢复里面选择设置。
在下面选择系统失败的时候写入日志和写入调试信息为小内存转储即可。
下方的小转储目录即为你转储Dump文件所在的路径,你可以直接复制然后粘贴到文件资源管理器的地址栏直接回车即可打开。
如果成功打开这个选项并且最近蓝屏过,保存的转储文件都会放在这里,如果你需要进行查看请把它们复制走,这里的文件会被系统自动删除。
下载WinDbg工具
因为下载的是特殊格式的转储文件,不是文本文件也不是二进制文件,所以不能以通用的记事本大法打开。
我们需要特殊的软件进行打开,我去网上找了一堆,结果都是要我下载Windows的开发程序包和SDK包,很麻烦,占用空间又多。
只不过偶然在Microsoft Store发现了这个程序官方商店居然就有提供,想起之前的自己就想笑。。。
下载链接
- 直接在Microsoft Store搜索WinDbg即可找到。
- 下载链接:https://www.microsoft.com/store/productId/9PGJGD53TN86?ocid=pdpshare
配置WinDbg
刚下载好的WinDbg还不可以马上就使用,因为缺少了微软的一些符号文件,导致这个软件无法识别出所有的特殊符号,即使打开也会报错。
我们打开WinDbg软件,点击左上角文件。
然后在新界面点击Settings→Debugging Settings。
然后在Default Symbol Path的框里面输入以下内容即可。
1 | srv*https://msdl.microsoft.com/download/symbols |
到这里我们的软件已经配置好了,可以正式投入使用了。
使用WinDbg分析转储文件
我们这里回到主页,然后点击左上角的文件,在新界面里面点击open Dump file,然后在右边的文件框里面选择你的转储文件然后点击下面open即可。
进入Debug界面,如果是第一次进入可能得等程序自动从Microsoft官网下载符号文件,否则不能正常分析,我们耐心等着就行。
在结束后我们应该可以看到我们的见面变成了这样。
我们在中间指令框中输入 !analyze -v
,然后回车,就可以自动进行分析转储文件了。
在一阵等待之后我们就有了结果。
可以很明显地看到我们执行指令的输出有明显不同的颜色打底,我们往下翻。
在这里我们就找到了答案,前面开头的单词是 Exception_record
,很明显,我们需要的就是这一段的错误信息。
根据标黄的错误地址程序,和标蓝的错误原因,我相信你已经知道了该怎么解决这一次蓝屏的问题了吧。
我这里是nvlddmkm程序出了问题,而这个程序是NVIDIA的驱动程序,后面我去把驱动重装了一次,就再也没碰过蓝屏的问题了。
结束
相信你看到这里,已经有自己的想法了,那么接下来就该拯救你自己电脑的蓝屏问题了。
愿这世间的电脑再无错误蓝屏。