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