IOCTL_VOLUME_GET_VOLUME_DISK_EXTENTS IOCTL (ntddvol.h)
Devuelve las ubicaciones físicas de un volumen en uno o varios discos. Las extensiones se almacenan inicialmente en el orden en que se crean, pero la remirroring, la división o la interrupción de un reflejo, o las acciones realizadas durante la recuperación ante desastres, pueden afectar al orden de las extensiones del disco.
Código principal
Búfer de entrada
Ninguno.
Longitud del búfer de entrada
Ninguno.
Búfer de salida
El controlador devuelve una estructura de VOLUME_DISK_EXTENTS en el búfer en Irp-AssociatedIrp.SystemBuffer>, que debe ser al menos sizeof(VOLUME_DISK_EXTENTS).
Longitud del búfer de salida
Longitud de una estructura de VOLUME_DISK_EXTENTS.
Bloque de estado
El controlador establece Irp-IoStatus.Information> y el campo Estado de la siguiente manera:
- Si el búfer de Irp->AssociatedIrp.SystemBuffer es < sizeof(VOLUME_DISK_EXTENTS), el controlador establece Irp->IoStatus.Information en cero y devuelve STATUS_INVALID_PARAMETER.
- Si el búfer en Irp->AssociatedIrp.SystemBuffer es al menos sizeof(VOLUME_DISK_EXTENTS) pero demasiado pequeño para que se devuelvan todos los datos, el controlador establece Irp->IoStatus.Information para sizeof(VOLUME_DISK_EXTENTS) y establece Status en STATUS_BUFFER_OVERFLOW.
- Si el búfer de Irp->AssociatedIrp.SystemBuffer es lo suficientemente grande para que se devuelvan todos los datos, el controlador establece Irp->IoStatus.Information para sizeof(VOLUME_DISK_EXTENTS) + ((NumberOfDiskExtents - 1) * sizeof(DISK_EXTENT)) y establece Status en STATUS_SUCCESS.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Disponible en Microsoft Windows 2000 para volúmenes en discos fijos, pero no para volúmenes en medios extraíbles. Disponible para su uso con medios extraíbles en Microsoft Windows 2000 SP4 y Windows XP SP1. |
Encabezado | ntddvol.h (incluya Ntddvol.h) |