KERNEL_MODE_EXCEPTION_NOT_HANDLED 错误检查的值为 0x0000008E。
此错误检查表明内核模式应用程序生成了错误处理程序未捕获的异常。
KERNEL_MODE_EXCEPTION_NOT_HANDLED 参数
参数 | 描述 |
---|---|
1 | 未被处理的异常代码 |
2 | 异常发生 |
3 | 的地址陷阱帧 |
4 | 保留 |
解决方法
!analyze 调试扩展显示有关错误检查的信息,有助于确定根本原因。
详细步骤查看我们的教程 在windows 中使用WinDBG 调试dmp文件
如果我们不具备调试此问题的能力,则应使用一些基本的故障排除技术:
- 确保我们有足够的磁盘空间。
- 如果在错误检查消息中识别出驱动程序,请禁用该驱动程序或者与制造商联系以获取驱动程序更新。
- 尝试更换视频适配器。
- 请与硬件供应商联系以获取任何 BIOS 更新。
- 禁用 BIOS 内存选项,例如缓存或者阴影。
如果我们计划调试此问题,我们可能会发现很难获得堆栈跟踪。
参数 2(异常地址)应标识导致此问题的驱动程序或者函数。
如果出现异常代码 0x80000003,则表示命中了硬编码断点或者断言,但计算机是使用 /NODEBUG 开关启动的。
这个问题应该很少发生。
如果它重复出现,请确保已连接内核调试器并且计算机是使用 /DEBUG 开关启动的。
如果出现异常代码 0x80000002,陷阱帧会提供添加信息。
如果我们不知道异常的具体原因,请考虑以下几项:
- 硬件不兼容。确保安装的任何新硬件都与安装的 Windows 版本兼容。
- 设备驱动程序或者系统服务有问题。有故障的设备驱动程序或者系统服务可能是造成此错误的原因。硬件问题,例如 BIOS 不兼容、内存冲突和 IRQ 冲突,也会产生此错误。
如果错误检查消息按名称列出了驱动程序,请禁用或者删除该驱动程序。
此外,禁用或者删除最近添加的任何驱动程序或者服务。
如果在启动过程中出现错误并且系统分区被格式化为 NTFS 文件系统,我们或者许可以使用安全模式重命名或者删除有问题的驱动程序。
如果驱动程序在安全模式下用作系统启动过程的一部分,则必须使用故障恢复控制台启动计算机才能访问该文件。
如果问题与 Win32k.sys 相关,则错误来源可能是第三方远程控制程序。
如果安装了此类软件,我们可以通过使用故障恢复控制台启动系统然后删除有问题的系统服务文件来删除该服务。
检查事件查看器中的系统日志以获取可能有助于识别导致错误检查 0x8E 的设备或者驱动程序的其他错误消息。
我们可以禁用 BIOS 的内存缓存以尝试解决该错误。
我们还应该运行硬件诊断程序,尤其是系统制造商提供的内存扫描程序。
有关这些步骤的更多信息,请参阅计算机的用户手册。
在 Windows 安装过程中第一次重新启动后或者安装完成后,可能会发生生成此消息的错误。
错误的可能原因是安装磁盘空间不足和系统 BIOS 不兼容。
对于 Windows 安装过程中与磁盘空间不足相关的问题,请减少目标硬盘驱动器上的文件数。
检查并删除我们不需要的任何临时文件、Internet 缓存文件、应用程序备份文件以及包含从磁盘扫描中保存的文件碎片的 .chk 文件。
我们还可以使用具有更多可用空间的其他硬盘驱动器进行安装。
原因
KERNEL_MODE_EXCEPTION_NOT_HANDLED 错误检查是一种非常常见的错误检查。
要解释它,我们必须确定生成了哪个异常。
常见异常代码包括以下内容:
- 0x80000002:STATUS_DATATYPE_MISALIGNMENT 表示遇到未对齐的数据引用。
- 0x80000003:STATUS_BREAKPOINT 表示当没有内核调试器连接到系统时遇到断点或者断言。
- 0xC0000005:STATUS_ACCESS_VIOLATION 表示发生了内存访问冲突。
有关异常代码的完整列表,请参阅位于 onitroad Windows 驱动程序工具包 (WDK) 的 inc 目录中的 Ntstatus.h 文件。