PNP_DETECTED_FATAL_ERROR 错误检查的值为 0x000000CA。
这表明即插即用管理器遇到严重错误,可能是由于即插即用驱动程序有问题。
欢迎 on
it
road
PNP_DETECTED_FATAL_ERROR 参数
参数 1 标识违规类型。
参数 1 | 参数 2 | 参数 3 | 参数 4 | 错误原因 |
---|---|---|---|---|
0x1 | 新上报的 PDO 地址 | 已复制的旧 PDO 的地址 | 保留 | 重复 PDO:驱动程序的特定实例列举了多个具有相同设备 ID 和唯一 ID 的 PDO。 |
0x2 | 据称 PDO 的地址 | 驱动对象地址 | 保留 | 无效的 PDO:需要 PDO 的 API 已被随机内存、FDO 或者尚未初始化的 PDO 调用。 (未初始化的 PDO 是指尚未由 QueryDeviceRelation 或者 QueryBusRelations 返回到即插即用的 PDO。) |
0x3 | 查询ID的PDO地址 | ID缓冲区地址 | 1:DeviceID 2:UniqueID 3:HardwareID 4:CompatibleID | 无效 ID:枚举器返回的 ID 包含非法字符或者未正确终止。(ID 必须仅包含 0x20 - 0x2B 和 0x2D - 0x7F 范围内的字符。) |
0x4 | 设置了 DOE_DELETE_PENDING 的 PDO 地址 | 保留 | 保留 | 已删除 PDO 的无效枚举:枚举器返回了之前使用 IoDeleteDevice 删除的 PDO。 |
0x5 | PDO地址 | 保留 | 保留 | PDO 在 devnode 树中链接时被释放:当 devnode 仍然在树中链接时,PDO 上的对象管理器引用计数下降到零。(这通常表明驱动程序在查询 IRP 中返回 PDO 时没有添加引用。) |
0x8 | 堆栈返回无效总线关系的 PDO 地址 | 作为总线关系返回的 PDO 总数 | 找到第一个 NULL PDO 的索引(从零开始) | NULL 指针作为总线关系返回:总线上存在的一个或者多个设备是 NULL PDO。 |
0x9 | 传递的连接类型 | 保留 | 保留 | 传递给 IoDisconnectInterruptEx 的连接类型无效:驱动程序已将无效的连接类型传递给 IoDisconnectInterruptEx。传递给此例程的连接类型必须与相应成功调用 IoConnectInterruptEx 返回的连接类型相匹配。 |
0xA | 驱动程序对象 | 从驱动程序回调返回后的 IRQL | 从驱动程序回调返回后组合 APC 禁用计数 | 不正确的通知回调行为:驱动程序未能在即插即用通知中保留 IRQL 或者组合 APC 禁用计数。 |
0xB | 相关 PDO | 移除关系 | 保留 | 已删除 PDO 报告为关系:被移除设备的移除关系之一已被删除。 |
日期:2020-09-17 00:16:11 来源:oir作者:oir