通过


设备节点状态标志

设备节点状态标志描述设备的状态。

最重要的标志是:

DNF_MADEUP(0x00000001)
设备已创建并归 PnP 管理器所有。 它不是由公交车司机创建的。

DNF_DUPLICATE(0x00000002)
设备节点是另一个枚举设备节点的副本。

DNF_HAL_NODE(0x00000004)
设备节点是由硬件抽象层(HAL)创建的根节点。

DNF_REENUMERATE(0x00000008)
需要重新枚举设备。

DNF_ENUMERATED(0x00000010)
设备的 PDO 由其父级公开。

DNF_IDS_QUERIED(0x00000020)
操作系统应向设备驱动程序发送IRP_MN_QUERY_ID请求。

DNF_HAS_BOOT_CONFIG(0x00000040)
设备具有 BIOS 分配的资源。 设备被视为伪启动,需要参与重新均衡。

DNF_BOOT_CONFIG_RESERVED (0x00000080)
设备的启动资源已被保留。

DNF_NO_RESOURCE_REQUIRED(0x00000100)
设备不需要资源。

DNF_RESOURCE_REQUIREMENTS_NEED_FILTERED(0x00000200)
设备的资源要求列表是筛选列表。

DNF_RESOURCE_REQUIREMENTS_CHANGED (0x00000400)
设备的资源要求列表已更改。

DNF_NON_STOPPED_REBALANCE(0x00000800)
可以使用新资源重启设备,而不会停止。

DNF_LEGACY_DRIVER(0x00001000)
设备的控制驱动程序是非 PnP 驱动程序。

DNF_HAS_PROBLEM(0x00002000)
设备有问题,将被删除。

DNF_HAS_PRIVATE_PROBLEM(0x00004000)
设备报告PNP_DEVICE_FAILED而不报告PNP_DEVICE_RESOURCE_REQUIREMENTS_CHANGED。

DNF_HARDWARE_VERIFICATION(0x00008000)
设备节点具有硬件验证。

DNF_DEVICE_GONE(0x00010000)
设备的 PDO 不再在 IRP_QUERY_RELATIONS 请求中返回。

DNF_LEGACY_RESOURCE_DEVICENODE(0x00020000)
设备节点是为传统资源分配创建的。

DNF_NEEDS_REBALANCE(0x00040000)
设备节点触发了重新均衡。

DNF_LOCKED_FOR_EJECT(0x00080000)
设备被弹出或与正在弹出的设备相关。

DNF_DRIVER_BLOCKED(0x00100000)
设备节点的一个或多个驱动程序已被阻止加载。

DNF_CHILD_WITH_INVALID_ID(0x00200000)
设备节点的一个或多个子级具有无效的ID。

DNF_ASYNC_START_NOT_SUPPORTED(0x00400000)
设备不支持异步启动。

DNF_ASYNC_ENUMERATION_NOT_SUPPORTED(0x00800000)
设备不支持异步枚举。

DNF_LOCKED_FOR_REBALANCE(0x01000000)
设备已锁定以重新平衡。

DNF_UNINSTALLED(0x02000000)
设备的IRP_MN_QUERY_REMOVE_DEVICE请求正在进行中。

DNF_NO_LOWER_DEVICE_FILTERS(0x04000000)
没有设备的较低设备筛选器类型的注册表项。

DNF_NO_LOWER_CLASS_FILTERS(0x08000000)
设备没有较低类筛选器类型的注册表项。

DNF_NO_SERVICE(0x10000000)
设备没有服务的注册表项。

DNF_NO_UPPER_DEVICE_FILTERS(0x20000000)
设备没有上层设备筛选器类型的注册表项。

DNF_NO_UPPER_CLASS_FILTERS(0x40000000)
设备没有上层筛选器类型的注册表项。

DNF_WAITING_FOR_FDO(0x80000000)
设备的枚举正在等待中,直到驱动程序附加其 FDO。