IOCTL_DISK_GET_DRIVE_LAYOUT IOCTL (ntdddisk.h)
Возвращает сведения о количестве секций, сигнатуре диска и функциях каждой секции на диске. (Драйверы гибких дисков не должны обрабатывать этот запрос.)
Основной код
Входной буфер
Нет.
Длина входного буфера
Нет.
Выходной буфер
Драйвер возвращает данные DRIVE_LAYOUT_INFORMATION в буфере по адресу Irp-AssociatedIrp.SystemBuffer>.
Длина выходного буфера
Parameters.DeviceIoControl.OutputBufferLength в расположении стека ввода-вывода IRP указывает размер буфера в байтах, который должен иметь >значение = sizeof(DRIVE_LAYOUT_INFORMATION). Обратите внимание, что эта структура содержит массив PARTITION_INFORMATION элементов переменной величины.
Блок состояния
В поле Сведения задается размер возвращаемых данных в байтах. Для поля Состояние можно задать значение STATUS_SUCCESS или, возможно, STATUS_DEVICE_OFF_LINE, STATUS_INFO_LENGTH_MISMATCH, STATUS_INSUFFICIENT_RESOURCES или STATUS_BUFFER_TOO_SMALL.
Требования
Требование | Значение |
---|---|
Заголовок | ntdddisk.h (включая Ntdddisk.h) |