Condividi tramite


!wdfkd.wdfdevice

L'estensione !wdfkd.wdfdevice visualizza informazioni associate a un handle di oggetto tipizzato WDFDEVICE.

!wdfkd.wdfdevice Handle [Flags]

Parametri

Maneggiare
Handle per un oggetto tipizzato WDFDEVICE.

Bandiere
Facoltativo. Tipo di informazioni da visualizzare. I flag possono essere una qualsiasi combinazione dei bit seguenti:

Bit 0 (0x1)
La visualizzazione includerà informazioni dettagliate sul dispositivo, ad esempio gli handle tipizzato WDFCHILDLIST associati, l'ambito di sincronizzazione e il livello di esecuzione.

Bit 1 (0x2)
La visualizzazione includerà informazioni dettagliate sullo stato di alimentazione.

Bit 2 (0x4)
La visualizzazione includerà informazioni dettagliate sullo stato dei criteri di risparmio energia.

Bit 3 (0x8)
La visualizzazione include informazioni dettagliate sullo stato di Plug and Play (PnP).

Bit 4 (0x10)
La visualizzazione includerà le funzioni di callback dell'oggetto dispositivo.

DLL

Wdfkd.dll

Framework

KMDF 1, UMDF 2

Informazioni aggiuntive

Per altre informazioni, vedere Debug del framework driver in modalità kernel.

Osservazioni:

L'esempio seguente usa l'estensione !wdfkd.wdfdevice in un handle WDFDEVICE che rappresenta un oggetto dispositivo fisico (PDO), senza specificare alcun flag.

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

Nell'esempio seguente viene visualizzato lo stesso oggetto dispositivo dell'esempio precedente, ma questa volta con un valore flag di 0xF. Questo valore flag, una combinazione di bit 0x1, 0x2, 0x4 e 0x8, fa sì che la visualizzazione includa informazioni dettagliate sul dispositivo, informazioni sullo stato di alimentazione, informazioni sullo stato di risparmio energia, informazioni sullo stato di risparmio energia e informazioni sullo stato 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