Поделиться через


!devobj

Расширение !devobj отображает подробные сведения о структуре DEVICE_OBJECT.

!devobj DeviceObject 

Параметры

DeviceObject
Указывает объект устройства. Это может быть шестнадцатеричный адрес этой структуры или имя устройства.

DLL-библиотеки

Kdexts.dll

Дополнительная информация

Примеры и приложения этой команды расширения см. в самонастраивающийся отладке. Дополнительные сведения об объектах устройств см. в документации по комплекту драйверов Windows (WDK) и внутренних элементах Microsoft Windows Марком Руссиновичем и Дэвидом Соломоном.

Замечания

Если DeviceObject указывает имя устройства, но не предоставляет префикс, предполагается префикс \Device\. Обратите внимание, что эта команда проверяет, является ли DeviceObject допустимым адресом или именем устройства перед использованием вычислителя выражений.

Отображаемые сведения включают имя устройства объекта, сведения о текущем IRP устройства и список адресов ожидающих irPs в очереди устройства. Он также содержит сведения об объектах устройств, слои которых наложены на вершине этого объекта (в списке "ПрисоединеннаяDevice") и те, которые слои под этим объектом (перечислены как "AttachedTo").

Адрес объекта устройства можно получить с помощью расширений !drvobj или !devnode.

Ниже приведен один пример.

kd> !devnode
Dumping IopRootDeviceNode (= 0x80e203b8)
DevNode 0x80e203b8 for PDO 0x80e204f8
 Parent 0000000000   Sibling 0000000000   Child 0x80e56dc8
  InstancePath is "HTREE\ROOT\0"
  State = DeviceNodeStarted (0x308)
  Previous State = DeviceNodeEnumerateCompletion (0x30d)
  StateHistory[04] = DeviceNodeEnumerateCompletion (0x30d)
  StateHistory[03] = DeviceNodeStarted (0x308)
  StateHistory[02] = DeviceNodeEnumerateCompletion (0x30d)
  StateHistory[01] = DeviceNodeStarted (0x308)
  StateHistory[00] = DeviceNodeUninitialized (0x301)
  StateHistory[19] = Unknown State (0x0)
  .....
  StateHistory[05] = Unknown State (0x0)
  Flags (0x00000131)  DNF_MADEUP, DNF_ENUMERATED, 
                      DNF_IDS_QUERIED, DNF_NO_RESOURCE_REQUIRED
  DisableableDepends = 11 (from children)

kd> !devobj 80e204f8
Device object (80e204f8) is for:
  \Driver\PnpManager DriverObject 80e20610
Current Irp 00000000 RefCount 0 Type 00000004 Flags 00001000
DevExt 80e205b0 DevObjExt 80e205b8 DevNode 80e203b8 
ExtensionFlags (0000000000)  
Device queue is not busy.