IOCTL_CDROM_RAW_READ IOCTL (ntddcdrm.h)
Lee los datos del CD-ROM en modo sin procesar.
Código principal
Búfer de entrada
Si el IOCTL procede del modo de usuario, Irp-AssociatedIrp.SystemBuffer> contiene una estructura de RAW_READ_INFO que especifica el desplazamiento del disco inicial, el recuento de sectores y el modo de pista (XA o CDDA) para la lectura. Parameters.DeviceIoControl.InputBufferLength especifica el tamaño, en bytes, de la estructura, que debe ser >= sizeof(RAW_READ_INFO). Parameters.DeviceIoControl.OutputBufferLength especifica el tamaño del búfer que se va a leer, que debe ser >= sizeof(SectorCount * RAW_SECTOR_SIZE).
Si el IOCTL procede del modo kernel, Parameters.DeviceIoControl.Type3InputBuffer contiene una estructura que especifica el desplazamiento del disco inicial, el recuento de sectores y el modo de pista (XA o CDDA) para la lectura. Parameters.DeviceIoControl.OutputBufferLength especifica el tamaño del búfer, en bytes, que se debe leer, que debe ser >= sizeof(SectorCount * RAW_SECTOR_SIZE).
Longitud del búfer de entrada
Consulte más arriba.
Búfer de salida
El controlador escribe los bytes solicitados directamente (mediante DMA o PIO) en el búfer descrito por el MDL en Irp-MdlAddress>.
Longitud del búfer de salida
Longitud de un MDL.
Bloque de estado
Si la lectura se realiza correctamente, el controlador establece Estado en STATUS_SUCCESS e Información en el número de bytes transferidos. Si la lectura no se realiza correctamente, el controlador establece Información en cero y Estado en posiblemente STATUS_INVALID_PARAMETER, STATUS_INSUFFICIENT_RESOURCES o STATUS_INVALID_DEVICE_REQUEST.
Requisitos
Requisito | Valor |
---|---|
Header | ntddcdrm.h (incluya Ntddcdrm.h) |