!ioctldecode

!ioctldecode 延伸模組會顯示指定 IOCTL 程式代碼所指定的裝置類型必要存取函式程式代碼傳輸類型。 如需IOCTL控件程式代碼的詳細資訊,請參閱 定義I/O控制碼

!ioctldecode IoctlCode 

參數

IoctlCode

指定十六進位IOCTL程式代碼。 !irp 命令在其輸出中顯示 IOCTL 程式代碼。

DLL

Kdexts.dll

其他資訊

若要查看 IOCTL 的相關信息,我們會先找出感興趣的 IRP。 您可以使用 !irpfind 命令來尋找感興趣的 irp。

使用 !irp 命令來顯示 irp 的相關信息。

0: kd> !irp ffffd581a6c6cd30
Irp is active with 6 stacks 6 is current (= 0xffffd581a6c6cf68)
No Mdl: No System Buffer: Thread 00000000:  Irp stack trace.  
     cmd  flg cl Device   File     Completion-Context
[N/A(0), N/A(0)]
            0  0 00000000 00000000 00000000-00000000    

                                                Args: 00000000 00000000 00000000 00000000
[N/A(0), N/A(0)]
            0  0 00000000 00000000 00000000-00000000    

                                                Args: 00000000 00000000 00000000 00000000
[N/A(0), N/A(0)]
            0  0 00000000 00000000 00000000-00000000    

                                                Args: 00000000 00000000 00000000 00000000
[N/A(0), N/A(0)]
            0  0 00000000 00000000 00000000-00000000    

                                                Args: 00000000 00000000 00000000 00000000
[N/A(0), N/A(0)]
            0  0 00000000 00000000 00000000-00000000    

                                                Args: 00000000 00000000 00000000 00000000
>[IRP_MJ_INTERNAL_DEVICE_CONTROL(f), N/A(0)]
            0 e1 ffffd581a5fbd050 00000000 fffff806d2412cf0-ffffd581a5cce050 Success Error Cancel pending
                       \Driver\usbehci        (IopUnloadSafeCompletion)
                                                Args: ffffd581a6c61a50 00000000 0x220003 00000000

在此案例 中,顯示的第三個自變數0x220003是IOCTL程式碼。 使用IOCTL程式代碼來顯示IOCTL的相關信息,在此案例 中為IOCTL_INTERNAL_USB_SUBMIT_URB

0: kd> !ioctldecode 0x220003

IOCTL_INTERNAL_USB_SUBMIT_URB

Device Type    : 0x22 (FILE_DEVICE_WINLOAD) (FILE_DEVICE_USER_MODE_BUS) (FILE_DEVICE_USB) (FILE_DEVICE_UNKNOWN)
Method         : 0x3 METHOD_NEITHER 
Access         : FILE_ANY_ACCESS
Function       : 0x0

如果您提供無法使用的 IOCTL 程式代碼,您會看到這種類型的輸出。

0: kd> !ioctldecode 0x1280ce

Unknown IOCTL  : 0x1280ce 

Device Type    : 0x12 (FILE_DEVICE_NETWORK)
Method         : 0x2 METHOD_OUT_DIRECT 
Access         : FILE_WRITE_ACCESS 
Function       : 0x33

雖然未識別 IOCTL,但會顯示 IOCTL 字段的相關信息。

請注意,只有公開定義的IOCTL子集能夠由 !ioctldecode 命令識別。

如需IOCTLs的詳細資訊,請參閱 I/O控制代碼簡介。

如需 IRP 和 IOCTLs 的一般資訊,請參閱 Mark E. Russinovich、David A. 所羅門和 Alex Ionescu 的 Windows 內部