Condividi tramite


IOCTL_DISK_REASSIGN_BLOCKS IOCTL (ntdddisk.h)

Esegue il mapping dei blocchi difettosi a una nuova posizione su disco. Questa richiesta indica al dispositivo di riassegnare l'indirizzo del blocco non valido a un blocco valido dal pool di blocchi di riserva.

Codice principale

IRP_MJ_DEVICE_CONTROL

Buffer di input

Il buffer in corrispondenza Irp->AssociatedIrp.SystemBuffer contiene i valori REASSIGN_BLOCKS da impostare. Si noti che questa struttura contiene una matrice di numeri di blocco di dimensioni variabili. È responsabilità del chiamante assicurarsi che la matrice di numeri di blocco sia ordinata in ordine crescente.

Lunghezza del buffer di input

Parameters.DeviceIoControl.InputBufferLength nella posizione dello stack di I/O dell'IRP indica le dimensioni, in byte, del buffer, che deve essere >= sizeof(REASSIGN_BLOCKS).

Buffer di output

Nessuno.

Lunghezza del buffer di output

Nessuno.

Blocco di stato

Il campo informazioni è impostato su zero. Il campo Stato può essere impostato su STATUS_SUCCESS o su STATUS_INFO_LENGTH_MISMATCH, STATUS_INSUFFICIENT_RESOURCES o STATUS_BUFFER_TOO_SMALL.

Fabbisogno

Requisito Valore
intestazione ntdddisk.h (include Ntdddisk.h)

Vedere anche

REASSIGN_BLOCKS