IOCTL_DISK_GROW_PARTITION IOCTL (ntdddisk.h)
Увеличивает размер существующей секции. Он используется в сочетании с IOCTL_DISK_UPDATE_DRIVE_SIZE для расширения диска, чтобы он содержал новую свободное пространство, а затем расширить существующую секцию на диске в только что подключенном свободном пространстве. Она принимает DISK_GROW_PARTITION структуру в качестве единственного параметра. Для работы этой операции пространство после указанной секции должно быть свободно. Секцию нельзя расширить по сравнению с другой существующей секцией.
Основной код
Входной буфер
Буфер в Irp->AssociatedIrp.SystemBuffer содержит значения DISK_GROW_PARTITION , которые будут использоваться для увеличения размера секции.
Длина входного буфера
Parameters.DeviceIoControl.InputBufferLength в расположении стека ввода-вывода iRP указывает размер буфера в байтах, который доступен драйверу, который должен быть >= размер(DISK_GROW_PARTITION). В противном случае драйвер возвращает состояние ошибки STATUS_BUFFER_TOO_SMALL.
Выходной буфер
Никакой.
Длина выходного буфера
Никакой.
Блок состояния
Поле состояния имеет значение STATUS_SUCCESS или, возможно, STATUS_BUFFER_TOO_SMALL, STATUS_INVALID_PARAMETER, STATUS_UNSUCCESSFUL или STATUS_DRIVER_INTERNAL_ERROR.
Требования
Требование | Ценность |
---|---|
заголовка | ntdddisk.h (include Ntdddisk.h) |