设备节点状态标志描述设备的状态。
最重要的标志是:
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。