!devobj

! devobj 拡張機能では 、システム構造に関する詳細情報がDEVICE_OBJECTされます。

!devobj DeviceObject 

パラメーター

DeviceObject
デバイス オブジェクトを指定します。 この構造体の 16 進数アドレスまたはデバイスの名前を指定できます。

DLL

Windows 2000

Kdextx86.dll

Windows XP 以降

Kdexts.dll

追加情報

この拡張プラグ アンド プレイの例とアプリケーションについては、「デバッグの詳細」を参照してください。 デバイス オブジェクトの詳細については、Windows Driver Kit (WDK) のドキュメントと Microsoft Windows Internals by Mark Russinovich および David Solomon を参照してください。

注釈

DeviceObject でデバイスの名前が指定されているのにプレフィックスが指定されていない場合は、プレフィックス "\Device\" と見なされます。 このコマンドは、式エバリュエーターを使用する前に 、DeviceObject が有効なアドレスかデバイス名か確認します。

表示される情報には、オブジェクトのデバイス名、デバイスの現在の IRP に関する情報、デバイスのキュー内の保留中の IRP のアドレスの一覧が含まれます。 また、このオブジェクトの上に重ね合ったデバイス オブジェクト ("AttachedDevice" と表示されます) と、このオブジェクトの下にレイヤー化されたデバイス オブジェクト ("AttachedTo" と表示される) に関する情報も含まれます。

デバイス オブジェクトのアドレスは、! drvobj または !devnode 拡張機能を使用して取得 できます。

1 つの例を次に示します。

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.