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