!wdfkd.wdfdevice

!wdfkd.wdfdevice 확장은 WDFDEVICE 형식 개체 핸들과 연결된 정보를 표시합니다.

!wdfkd.wdfdevice Handle [Flags]

매개 변수

Handle
WDFDEVICE 형식 개체에 대한 핸들입니다.

Flags
선택 사항. 표시할 정보의 종류입니다. 플래그 는 다음 비트의 조합일 수 있습니다.

비트 0(0x1)
디스플레이에는 연결된 WDFCHILDLIST 형식 핸들, 동기화 범위 및 실행 수준과 같은 디바이스에 대한 자세한 정보가 포함됩니다.

비트 1(0x2)
디스플레이에는 자세한 전원 상태 정보가 포함됩니다.

비트 2(0x4)
디스플레이에는 자세한 전원 정책 상태 정보가 포함됩니다.

비트 3(0x8)
디스플레이에는 자세한 PnP(플러그 앤 플레이) 상태 정보가 포함됩니다.

비트 4(0x10)
디스플레이에는 디바이스 개체의 콜백 함수가 포함됩니다.

DLL

Wdfkd.dll

프레임워크

KMDF 1, UMDF 2

추가 정보

자세한 내용은 커널 모드 드라이버 프레임워크 디버깅을 참조 하세요.

설명

다음 예제에서는 플래그를 지정하지 않고 PDO(물리적 디바이스 개체)를 나타내는 WDFDEVICE 핸들에서 !wdfkd.wdfdevice 확장을 사용합니다.

kd> !wdfdevice 0x7cad31c8 

# Dumping WDFDEVICE 0x7cad31c8
=================================

WDM PDEVICE_OBJECTs:  self 81fb00e8

Pnp state:  119 ( WdfDevStatePnpStarted )
Power state:  31f ( WdfDevStatePowerDx )
Power Pol state:  508 ( WdfDevStatePwrPolWaitingUnarmed )

Parent WDFDEVICE 7ca7b1c0
Parent states:
   Pnp state:  119 ( WdfDevStatePnpStarted )
   Power state:  307 ( WdfDevStatePowerD0 )
   Power Pol state:  565 ( WdfDevStatePwrPolStarted )

No pended pnp or power irps
Device is the power policy owner for the stack

다음 예제에서는 앞의 예제와 동일한 디바이스 개체를 표시하지만 이번에는 플래그 값이 0xF. 이 플래그 값은 0x1 비트, 0x2, 0x4 및 0x8 조합하여 디스플레이에 자세한 디바이스 정보, 전원 상태 정보, 전원 정책 상태 정보 및 PnP 상태 정보를 포함합니다.

kd> !wdfdevice 0x7cad31c8 f 

# Dumping WDFDEVICE 0x7cad31c8
=================================

WDM PDEVICE_OBJECTs:  self 81fb00e8

Pnp state:  119 ( WdfDevStatePnpStarted )
Power state:  31f ( WdfDevStatePowerDx )
Power Pol state:  508 ( WdfDevStatePwrPolWaitingUnarmed )

Parent WDFDEVICE 7ca7b1c0
Parent states:
   Pnp state:  119 ( WdfDevStatePnpStarted )
   Power state:  307 ( WdfDevStatePowerD0 )
   Power Pol state:  565 ( WdfDevStatePwrPolStarted )

No pended pnp or power irps
Device is the power policy owner for the stack

Pnp state history:
[0] WdfDevStatePnpObjectCreated (0x100)
[1] WdfDevStatePnpInit (0x105)
[2] WdfDevStatePnpInitStarting (0x106)
[3] WdfDevStatePnpHardwareAvailable (0x108)
[4] WdfDevStatePnpEnableInterfaces (0x109)
[5] WdfDevStatePnpStarted (0x119)

Power state history:
[0] WdfDevStatePowerD0StartingConnectInterrupt (0x310)
[1] WdfDevStatePowerD0StartingDmaEnable (0x311)
[2] WdfDevStatePowerD0StartingStartSelfManagedIo (0x312)
[3] WdfDevStatePowerDecideD0State (0x313)
[4] WdfDevStatePowerD0BusWakeOwner (0x309)
[5] WdfDevStatePowerGotoDx (0x31a)
[6] WdfDevStatePowerGotoDxIoStopped (0x31c)
[7] WdfDevStatePowerDx (0x31f)

Power policy state history:
[0] WdfDevStatePwrPolStarting (0x501)
[1] WdfDevStatePwrPolStartingSucceeded (0x502)
[2] WdfDevStatePwrPolStartingDecideS0Wake (0x504)
[3] WdfDevStatePwrPolStartedIdleCapable (0x505)
[4] WdfDevStatePwrPolTimerExpiredNoWake (0x506)
[5] WdfDevStatePwrPolTimerExpiredNoWakeCompletePowerDown (0x507)
[6] WdfDevStatePwrPolWaitingUnarmedQueryIdle (0x509)
[7] WdfDevStatePwrPolWaitingUnarmed (0x508)

WDFCHILDLIST Handles:
 !WDFCHILDLIST 0x7ce710c8

SyncronizationScope is WdfSynchronizationScopeNone
ExecutionLevel is WdfExecutionLevelDispatch