typedef struct _DEVICE_NODE
{
PDEVICE_NODE Sibling;
PDEVICE_NODE Child;
PDEVICE_NODE Parent;
PDEVICE_NODE LastChild;
ULONG Level;
PO_DEVICE_NOTIFY Notify;
PO_IRP_MANAGER PoIrpManager;
PNP_DEVNODE_STATE State;
PNP_DEVNODE_STATE PreviousState;
PNP_DEVNODE_STATE StateHistory[20];
ULONG StateHistoryEntry;
LONG CompletionStatus;
PIRP PendingIrp;
ULONG Flags;
ULONG UserFlags;
ULONG Problem;
PDEVICE_OBJECT PhysicalDeviceObject;
PCM_RESOURCE_LIST ResourceList;
PCM_RESOURCE_LIST ResourceListTranslated;
UNICODE_STRING InstancePath;
UNICODE_STRING ServiceName;
PDEVICE_OBJECT DuplicatePDO;
PIO_RESOURCE_REQUIREMENTS_LIST ResourceRequirements;
INTERFACE_TYPE InterfaceType;
ULONG BusNumber;
INTERFACE_TYPE ChildInterfaceType;
ULONG ChildBusNumber;
WORD ChildBusTypeIndex;
UCHAR RemovalPolicy;
UCHAR HardwareRemovalPolicy;
LIST_ENTRY TargetDeviceNotify;
LIST_ENTRY DeviceArbiterList;
LIST_ENTRY DeviceTranslatorList;
WORD NoTranslatorMask;
WORD QueryTranslatorMask;
WORD NoArbiterMask;
WORD QueryArbiterMask;
ULONG OverUsed1;
ULONG OverUsed2;
PCM_RESOURCE_LIST BootResources;
PCM_RESOURCE_LIST BootResourcesTranslated;
ULONG CapabilityFlags;
BYTE DockInfo[16];
ULONG DisableableDepends;
LIST_ENTRY PendedSetInterfaceState;
LIST_ENTRY LegacyBusListEntry;
ULONG DriverUnloadRetryCount;
PDEVICE_NODE PreviousParent;
ULONG DeletedChildren;
ULONG NumaNodeIndex;
} DEVICE_NODE, *PDEVICE_NODE;
Windows Vista Kernel Structures
|