Partager via


IOCTL_VOLUME_GET_VOLUME_DISK_EXTENTS IOCTL (ntddvol.h)

Retourne le ou les emplacements physiques d’un volume sur un ou plusieurs disques. Les extensions sont initialement stockées dans l’ordre dans lequel elles sont créées, mais la recréation, le fractionnement ou la rupture d’un miroir, ou les actions effectuées pendant la récupération d’urgence, peuvent affecter l’ordre des extensions de disque.

Code principal

IRP_MJ_DEVICE_CONTROL

Mémoire tampon d'entrée

Aucun.

Longueur de la mémoire tampon d’entrée

Aucun.

Mémoire tampon de sortie

Le pilote retourne une structure de VOLUME_DISK_EXTENTS dans la mémoire tampon sur Irp-AssociatedIrp.SystemBuffer>, qui doit être au moins sizeof(VOLUME_DISK_EXTENTS).

Longueur de la mémoire tampon de sortie

Longueur d’une structure de VOLUME_DISK_EXTENTS.

Bloc d’état

Le pilote définit Irp-IoStatus.Information> et le champ Status comme suit :

  • Si la mémoire tampon sur Irp->AssociatedIrp.SystemBuffer est < sizeof(VOLUME_DISK_EXTENTS), le pilote définit Irp->IoStatus.Information sur zéro et retourne STATUS_INVALID_PARAMETER.
  • Si la mémoire tampon sur Irp->AssociatedIrp.SystemBuffer est au moins sizeof(VOLUME_DISK_EXTENTS) mais trop petite pour que toutes les données soient retournées, le pilote définit Irp->IoStatus.Information sur sizeof(VOLUME_DISK_EXTENTS) et définit Status sur STATUS_BUFFER_OVERFLOW.
  • Si la mémoire tampon dans Irp->AssociatedIrp.SystemBuffer est suffisamment grande pour que toutes les données soient retournées, le pilote définit Irp->IoStatus.Information sur sizeof(VOLUME_DISK_EXTENTS) + ((NumberOfDiskExtents - 1) * sizeof(DISK_EXTENT)) et définit Status sur STATUS_SUCCESS.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Disponible dans Microsoft Windows 2000 pour les volumes sur disques fixes, mais pas pour les volumes sur support amovible. Disponible pour une utilisation avec des supports amovibles dans Microsoft Windows 2000 SP4 et Windows XP SP1.
En-tête ntddvol.h (inclure Ntddvol.h)

Voir aussi

DISK_EXTENT

VOLUME_DISK_EXTENTS