IOCTL_VOLUME_LOGICAL_TO_PHYSICAL IOCTL (ntddvol.h)
Restituisce offset fisici e numeri di disco fisico per un offset logico del volume specificato.
Ad esempio, un offset di volume logico all'interno di un volume con mirroring con due plex corrisponde a due offset fisici, uno in ognuno dei due dischi che partecipano al mirror. In risposta a questo IOCTL, la gestione volumi restituisce due offset fisici e due numeri di disco fisico per l'offset del volume logico.
Gestione volumi supporta questo IOCTL per tutti i tipi di volumi di base e dinamici.
Codice principale
Buffer di input
Il chiamante inserisce la struttura VOLUME_LOGICAL_OFFSET contenente l'offset logico all'inizio del buffer in corrispondenza di Irp->AssociatedIrp.SystemBuffer.
Lunghezza del buffer di input
Parameters.DeviceIoControl.InputBufferLength nella posizione dello stack I/O dell'IRP indica le dimensioni, in byte, del buffer di input, che deve essere maggiore o uguale al valore di sizeof(VOLUME_LOGICAL_OFFSET).Buffer di output
Le dimensioni del buffer di output devono essere sufficienti per contenere la struttura VOLUME_PHYSICAL_OFFSETS, che contiene una matrice a lunghezza variabile di strutture di tipo VOLUME_PHYSICAL_OFFSET.
La gestione volumi restituisce uno o più offset fisici e numeri di disco nella struttura VOLUME_PHYSICAL_OFFSETS all'inizio del buffer, in corrispondenza di Irp->AssociatedIrp.SystemBuffer.
Lunghezza del buffer di output
Parameters.DeviceIoControl.OutputBufferLength nella posizione dello stack I/O dell'IRP indica le dimensioni, in byte, del buffer di output.
Blocco di stato
Se l'operazione ha esito positivo, il membro Stato è impostato su STATUS_SUCCESS. In caso contrario, il membro Status è impostato sul codice di errore appropriato. I codici di errore possibili includono:
STATUS_BUFFER_TOO_SMALL
Il buffer di output è troppo piccolo. Gestione volumi imposta il membro Irp->IoStatus.Information sulle dimensioni del buffer di output che deve essere specificato dal chiamante.
STATUS_INVALID_PARAMETER
Il buffer di input è troppo piccolo.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Disponibile a partire da Windows XP. |
intestazione | ntddvol.h (include Ntddvol.h) |