IOCTL_DISK_REASSIGN_BLOCKS IOCTL (ntdddisk.h)

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

Codice principale

IRP_MJ_DEVICE_CONTROL

Buffer di input

Il buffer in Irp-AssociatedIrp.SystemBuffer> contiene i valori REASSIGN_BLOCKS da impostare. Si noti che questa struttura contiene una matrice di numeri di blocchi 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 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 dello 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.

Requisiti

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

Vedi anche

REASSIGN_BLOCKS