Condividi tramite


!wdfkd.wdfdevext

L'estensione !wdfkd.wdfdevext visualizza informazioni associate al membro DeviceExtension di una struttura di DEVICE_OBJECT di Microsoft Windows Driver Model (WDM).

!wdfkd.wdfdevext DeviceExtension

Parametri

DeviceExtension
Puntatore a un'estensione del dispositivo.

DLL

Wdfkd.dll

Framework

KMDF 1, UMDF 1, UMDF 2

Informazioni aggiuntive

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

Osservazioni:

Di seguito è riportato un esempio di HdAudBus.sys, ovvero un driver KMDF. Usare !devnode per trovare un nodo del dispositivo con HdAudBus come driver di funzione. Prendere l'oggetto dispositivo fisico (PDO) dall'output e passarlo a !devstack. Prendere l'indirizzo dell'estensione del dispositivo dall'output di !devstack e passarlo a !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

Di seguito è riportato un esempio di Wudfrd.sys, ovvero il driver di funzione per la parte in modalità kernel di uno stack di driver UMDF 2. Usare !devnode per trovare un nodo del dispositivo con Wudfrd come driver di funzione. Prendere l'oggetto dispositivo fisico (PDO) dall'output e passarlo a !devstack. Prendere l'indirizzo dell'estensione del dispositivo dall'output di !devstack e passarlo a !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