!wudfext.wudfdumpobjects
!wudfext.wudfdumpobjects 拡張機能は、未完了の UMDF オブジェクトを表示します。
!wudfext.wudfdumpobjects ObjTrackerAddress
パラメーター
ObjTrackerAddress
リークしたオブジェクトを追跡するためのアドレスを指定します。 このアドレスは、リークが発生したときにデバッガーのドライバー停止メッセージに表示されています。
DLL
Wudfext.dll
追加情報
詳細については、「ユーザー モード ドライバー フレームワークのデバッグ」を参照してください。
解説
WDF Verifier で UMDF オブジェクト追跡オプション (TrackObjects) が有効になっている場合は、 !wudfext.wudfdumpobjects を使用して、ドライバーのアンロード後に残っているリークしたオブジェクトを確認できます。
TrackObjects オプションが有効になっている場合、リークが検出されると、オブジェクト トラッカーのアドレスが自動的に表示されます。 このアドレスは、 !wudfext.wudfdumpobjectsを実行するときに、 ObjTrackerAddress として使用します。
この拡張機能は、UMDF がデバッガーによって中断されていない場合でも、いつでも使用できます。
UMDF がバージョン 1.9 以降の場合は、 !wudfext.umdevstack または !wudfext.umdevstacks のいずれかを使用して、オブジェクト トラッカーのアドレスを特定することができます。 その後、このアドレスを !wudfext.wudfdumpobjects に渡すことができます。 例を次に示します。
0: kd> !umdevstacks
Number of device stacks: 1
Device Stack: 0x038c6f08 Pdo Name: \Device\USBPDO-11
Number of UM devices: 1
Device 0
Driver Config Registry Path: WUDFOsrUsbFx2
UMDriver Image Path: D:\Windows\system32\DRIVERS\UMDF\WUDFOsrUsbFx2.dll
Fx Driver: IWDFDriver 0x3076ff0
Fx Device: IWDFDevice 0x3082e70
IDriverEntry: WUDFOsrUsbFx2!CMyDriver 0x0306eff8
Open UM files (use !umfile <addr> for details):
0x04a8ef84
Device XFerMode: CopyImmediately RW: Buffered CTL: Buffered
Object Tracker Address: 0x03074fd8
Object Tracking ON
Refcount Tracking OFF
DevStack XFerMode: CopyImmediately RW: Buffered CTL: Buffered
0: kd> !wudfdumpobjects 0x03074fd8
WdfTypeDriver Object: 0x03076fb0, Interface: 0x03076ff0
WdfTypeDevice Object: 0x03082e30, Interface: 0x03082e70
WdfTypeIoTarget Object: 0x03088f50, Interface: 0x03088f90
WdfTypeIoQueue Object: 0x0308ce58, Interface: 0x0308ce98
WdfTypeIoQueue Object: 0x03090e58, Interface: 0x03090e98
WdfTypeIoQueue Object: 0x03092e58, Interface: 0x03092e98
WdfTypeIoTarget Object: 0x03098f40, Interface: 0x03098f80
WdfTypeFile Object: 0x0309cfa0, Interface: 0x0309cfe0
WdfTypeUsbInterface Object: 0x030a0f98, Interface: 0x030a0fd8
WdfTypeRequest Object: 0x030a2ef8, Interface: 0x030a2f38
WdfTypeIoTarget Object: 0x030a6f30, Interface: 0x030a6f70
WdfTypeIoTarget Object: 0x030aaf30, Interface: 0x030aaf70
WdfTypeIoTarget Object: 0x030aef30, Interface: 0x030aef70
WdfTypeRequest Object: 0x030c6ef8, Interface: 0x030c6f38
WdfTypeRequest Object: 0x030ceef8, Interface: 0x030cef38
WdfTypeMemoryObject Object: 0x030d6fb0, Interface: 0x030d6ff0
WdfTypeMemoryObject Object: 0x030dcfb0, Interface: 0x030dcff0
WdfTypeFile Object: 0x030e4fa8, Interface: 0x030e4fe8
WdfTypeFile Object: 0x030e6fa8, Interface: 0x030e6fe8
WdfTypeFile Object: 0x030e8fa8, Interface: 0x030e8fe8
WdfTypeRequest Object: 0x030eaef8, Interface: 0x030eaf38
WdfTypeMemoryObject Object: 0x030ecfb0, Interface: 0x030ecff0
WdfTypeMemoryObject Object: 0x030eefb0, Interface: 0x030eeff0