Partager via


!wdfkd.wdfdevice

L’extension !wdfkd.wdfdevice affiche les informations associées à une poignée d’objet de type WDFDEVICE.

!wdfkd.wdfdevice Handle [Flags]

Paramètres

Poignée
Un handle vers un objet de type WDFDEVICE.

Indicateurs
facultatif. Le type d’informations à afficher. Flags peut être n’importe quelle combinaison des bits suivants :

Bit 0 (0x1)
L’affichage inclut des informations détaillées sur le périphérique, telles que les poignées associées de type WDFCHILDLIST, la portée de synchronisation et le niveau d’exécution.

Bit 1 (0x2)
L’affichage inclut des informations détaillées sur l’état d’alimentation.

Bit 2 (0x4)
L’affichage inclut des informations détaillées sur l’état de la stratégie d’alimentation.

Bit 3 (0x8)
L’affichage inclut des informations détaillées sur l’état de Plug and Play (PnP).

Bit 4 (0x10)
L’affichage inclura les fonctions de rappel de l’objet de périphérique.

DLL

Wdfkd.dll

Frameworks

KMDF 1, UMDF 2

Informations supplémentaires

Pour plus d’informations, veuillez consulter la section Débogage de l’infrastructure du pilote Kernel-Mode.

Notes

L’exemple suivant utilise l’extension !wdfkd.wdfdevice sur une poignée WDFDEVICE représentant un objet de périphérique physique (PDO), sans spécifier d’indicateurs.

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

L’exemple suivant affiche le même objet de périphérique que l’exemple précédent, mais cette fois avec une valeur de drapeau de 0xF. Cette valeur d’indicateur, une combinaison des bits 0x1, 0x2, 0x4 et 0x8, provoque l’affichage d’informations détaillées sur le périphérique, l’état de l’alimentation, l’état de la stratégie d’alimentation et l’état de 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