Partager via


!wdfkd.wdfdevext

L’extension !wdfkd.wdfdevext affiche les informations associées au membre DeviceExtension d’une structure DEVICE_OBJECT du modèle de pilote Microsoft Windows (WDM).

!wdfkd.wdfdevext DeviceExtension

Paramètres

DeviceExtension
Pointeur vers une extension de périphérique.

DLL

Wdfkd.dll

Frameworks

KMDF 1, UMDF 1, UMDF 2

Informations supplémentaires

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

Notes

Voici un exemple pour HdAudBus.sys, qui est un pilote KMDF. Utilisez !devnode pour trouver un nœud de périphérique ayant HdAudBus comme pilote de fonction. Prenez l’objet de périphérique physique (PDO) à partir de la sortie et passez-le à !devstack. Prenez l’adresse de l’extension de périphérique à partir de la sortie de !devstack et passez-la à !wdfdevext.

0: kd> !devnode 0 1 hdaudbus
Dumping IopRootDeviceNode (= 0xffffe000002cfd30)
DevNode 0xffffe000009b7a50 for PDO 0xffffe00000226880
  InstancePath is "PCI\VEN_8086&DEV_293E&SUBSYS_2819103C&REV_02\3&33fd14ca&0&D8"
  ServiceName is "HDAudBus"
  ...
0: kd> !devstack 0xffffe00000226880
  !DevObj           !DrvObj            !DevExt           ObjectName
  ffffe00001351e20  \Driver\HDAudBus   ffffe000009a3c00  
> ffffe00000226880  \Driver\pci        ffffe000002269d0  NTPNP_PCI0009
!DevNode ffffe000009b7a50 :
  DeviceInst is "PCI\VEN_8086&DEV_293E&SUBSYS_2819103C&REV_02\3&33fd14ca&0&D8"
  ServiceName is "HDAudBus"
0: kd> *
0: kd> !wdfdevext ffffe000009a3c00
Device context is 0xffffe000009a3c00
    context:  dt 0xffffe000009a3c00 HDAudBus!HDAudioDeviceExtension (size is 0xa8 bytes)
    EvtCleanupCallback fffff80001f35950 HDAudBus!HdAudBusEvtDeviceCleanupCallback

!wdfdevice 0x00001fffff65c6e8                        
!wdfobject 0xffffe000009a3910

Voici un exemple pour Wudfrd.sys, qui est le pilote de fonction pour la partie en mode noyau d’une pile de pilotes UMDF 2. Utilisez !devnode pour trouver un nœud de périphérique ayant Wudfrd comme pilote de fonction. Prenez l’objet de périphérique physique (PDO) à partir de la sortie et passez-le à !devstack. Prenez l’adresse de l’extension de périphérique à partir de la sortie de !devstack et passez-la à !wdfdevext.

0: kd> !devnode 0 1 wudfrd
Dumping IopRootDeviceNode (= 0xffffe000002cfd30)
DevNode 0xffffe00000a1e530 for PDO 0xffffe00000b15b00
  InstancePath is "ROOT\SAMPLE\0001"
  ServiceName is "WUDFRd"
  ...
0: kd> !devstack 0xffffe00000b15b00
  !DevObj           !DrvObj            !DevExt           ObjectName
  ffffe00000c11040  \Driver\WUDFRd     ffffe00000c11190  
> ffffe00000b15b00  \Driver\PnpManager 00000000  00000052
!DevNode ffffe00000a1e530 :
  DeviceInst is "ROOT\SAMPLE\0001"
  ServiceName is "WUDFRd"
0: kd> *
0: kd> !wdfdevext ffffe00000c11190
## Device context is 0xffffe00000c11190

##  UMDF Device Instances for this Redirector extension

  DriverManagerProcess: 0xffffe00003470500

  ImageName              Ver   DevStack           HostProcess        DeviceID      
  MyUmdf2Driver.dll      v2.0  0x000000a5a3ab5f70 0xffffe00000c32900  \Device\00000052