Condividi tramite


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

IRP_MJ_DEVICE_CONTROL

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)

Vedere anche

IOCTL_VOLUME_PHYSICAL_TO_LOGICAL

VOLUME_LOGICAL_OFFSET

VOLUME_PHYSICAL_OFFSET

VOLUME_PHYSICAL_OFFSETS