Поделиться через


IOCTL_STORAGE_DIAGNOSTIC IOCTL (ntddstor.h)

IOCTL_STORAGE_DIAGNOSTIC используется для запроса диагностических данных из стека драйверов хранилища.

Основной код

IRP_MJ_DEVICE_CONTROL

Входной буфер

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).

Буфер входных и выходных данных

Недоступно

Длина входного/выходного буфера

Недоступно

Блок состояния

Irp->IoStatus.Status имеет значение STATUS_SUCCESS, если запрос выполнен успешно. В противном случае для параметра Состояние устанавливается соответствующее условие ошибки в виде кода NTSTATUS. Дополнительные сведения см. в разделе Значения NTSTATUS.

Требования

Требование Значение
Заголовок ntddstor.h

См. также раздел

STORAGE_DIAGNOSTIC_DATA

STORAGE_DIAGNOSTIC_REQUEST