Partager via


IOCTL_DISK_REASSIGN_BLOCKS_EX IOCTL (ntdddisk.h)

Mappe les blocs défectueux à un nouvel emplacement sur le disque. Cette demande indique à l’appareil de réaffecter l’adresse de bloc incorrecte à un bon bloc à partir de son pool de blocs de rechange.

Une demande de IOCTL_DISK_REASSIGN_BLOCKS_EX permet un plus grand nombre de blocs d’affectation que la demande de IOCTL_DISK_REASSIGN_BLOCKS.

Code principal

IRP_MJ_DEVICE_CONTROL

Mémoire tampon d’entrée

La mémoire tampon à Irp->AssociatedIrp.SystemBuffer contient les valeurs REASSIGN_BLOCKS_EX à définir. Notez que cette structure contient un tableau de nombres de blocs de taille variable. Il incombe à l’appelant de s’assurer que le tableau de numéros de bloc est trié dans l’ordre croissant.

Longueur de la mémoire tampon d’entrée

Parameters.DeviceIoControl.InputBufferLength à l’emplacement de la pile d’E/S de l’IRP indique la taille, en octets, de la mémoire tampon, qui doit être >= sizeof(REASSIGN_BLOCKS_EX).

Mémoire tampon de sortie

Aucun.

Longueur de la mémoire tampon de sortie

Aucun.

Bloc d’état

Le champ Informations est défini sur zéro. Le champ Status peut être défini sur STATUS_SUCCESS, ou éventuellement sur STATUS_INFO_LENGTH_MISMATCH, STATUS_INSUFFICIENT_RESOURCES ou STATUS_BUFFER_TOO_SMALL.

Exigences

Exigence Valeur
client minimum pris en charge Disponible à partir de Windows 8.
d’en-tête ntdddisk.h (include Ntdddisk.h)

Voir aussi

REASSIGN_BLOCKS_EX