IOCTL_STORAGE_DIAGNOSTIC IOCTL (ntddstor.h)
IOCTL_STORAGE_DIAGNOSTIC 用于查询存储驱动程序堆栈中的诊断数据。
主要代码
输入缓冲区
Irp->AssociatedIrp.SystemBuffer 包含一个 STORAGE_DIAGNOSTIC_REQUEST 结构,用于描述对存储驱动程序堆栈发出的诊断请求。
输入缓冲区长度
Parameters.DeviceIoControl.InputBufferLength 指示 Irp-AssociatedIrp.SystemBuffer> 的参数缓冲区的大小(以字节为单位),该缓冲区必须为 >= sizeof(STORAGE_DIAGNOSTIC_REQUEST)
。
输出缓冲区
驱动程序将输出返回到 Irp-AssociatedIrp.SystemBuffer> 中的缓冲区。 此缓冲区包含一个 STORAGE_DIAGNOSTIC_DATA 结构,其中包含有关存储驱动程序堆栈的诊断数据。
输出缓冲区长度
Parameters.DeviceIoControl.OutputBufferLength 指示 Irp-AssociatedIrp.SystemBuffer> 的参数缓冲区的大小(以字节为单位),该缓冲区必须为 >= sizeof(STORAGE_DIAGNOSTIC_DATA)
。
输入/输出缓冲区
N/A
输入/输出缓冲区长度
N/A
状态块
Irp->如果请求成功,IoStatus.Status 设置为 STATUS_SUCCESS。 否则, 状态 设置为相应的错误条件作为 NTSTATUS 代码。 有关详细信息,请参阅 NTSTATUS 值。
要求
要求 | 值 |
---|---|
Header | ntddstor.h |