IOCTL_DISK_REASSIGN_BLOCKS_EX 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.
Una richiesta di IOCTL_DISK_REASSIGN_BLOCKS_EX consente un numero maggiore di blocchi per l'assegnazione rispetto alla richiesta di IOCTL_DISK_REASSIGN_BLOCKS.
Codice principale
Buffer di input
Il buffer in corrispondenza Irp->AssociatedIrp.SystemBuffer contiene i valori REASSIGN_BLOCKS_EX 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 I/O dell'IRP indica le dimensioni, in byte, del buffer, che deve essere >= sizeof(REASSIGN_BLOCKS_EX).
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 |
---|---|
client minimo supportato | Disponibile a partire da Windows 8. |
intestazione | ntdddisk.h (include Ntdddisk.h) |