IOCTL_DISK_REASSIGN_BLOCKS_EX IOCTL (ntdddisk.h)
Asigna bloques defectuosos a una nueva ubicación en el disco. Esta solicitud indica al dispositivo que vuelva a asignar la dirección de bloque incorrecta a un bloque correcto desde su grupo de bloques de reserva.
Una solicitud IOCTL_DISK_REASSIGN_BLOCKS_EX permite un mayor número de bloques para la asignación que la solicitud de IOCTL_DISK_REASSIGN_BLOCKS.
Código principal
Búfer de entrada
El búfer de Irp->AssociatedIrp.SystemBuffer contiene los valores de REASSIGN_BLOCKS_EX que se van a establecer. Tenga en cuenta que esta estructura contiene una matriz de tamaño variable de números de bloque. Es responsabilidad del autor de la llamada asegurarse de que la matriz de números de bloque se ordena en orden ascendente.
Longitud del búfer de entrada
Parameters.DeviceIoControl.InputBufferLength en la ubicación de la pila de E/S del IRP indica el tamaño, en bytes, del búfer, que debe ser >= tamaño de(REASSIGN_BLOCKS_EX).
Búfer de salida
Ninguno.
Longitud del búfer de salida
Ninguno.
Bloque de estado
El campo información de está establecido en cero. El campo Estado de se puede establecer en STATUS_SUCCESS, o posiblemente en STATUS_INFO_LENGTH_MISMATCH, STATUS_INSUFFICIENT_RESOURCES o STATUS_BUFFER_TOO_SMALL.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Disponible a partir de Windows 8. |
encabezado de | ntdddisk.h (incluya Ntdddisk.h) |