Método IDiscFormat2Data::Write (imapi2.h)
Escribe el flujo de datos en el dispositivo.
Sintaxis
HRESULT Write(
[in] IStream *data
);
Parámetros
[in] data
Interfaz IStream del flujo de datos que se va a escribir.
Valor devuelto
S_OK se devuelve correctamente, pero se pueden devolver otros códigos de éxito como resultado de la implementación. Los siguientes códigos de error se devuelven normalmente en caso de error de operación, pero no representan los únicos valores de error posibles:
Código devuelto | Descripción |
---|---|
|
El dispositivo no pudo aceptar el comando dentro del período de tiempo de espera. Esto puede deberse a que el dispositivo ha entrado en un estado incoherente o es posible que sea necesario aumentar el valor de tiempo de espera del comando.
Valor: 0xC0AA020D |
|
El dispositivo notificó datos inesperados o no válidos para un comando.
Valor: 0xC0AA02FF |
|
El medio se inserta al revés.
Valor: 0xC0AA0204 |
|
La unidad informó de que está en proceso de preparación. Vuelva a intentar la solicitud más tarde.
Valor: 0xC0AA0205 |
|
No hay ningún medio en el dispositivo.
Valor: 0xC0AA0202 |
|
El medio está siendo formateado actualmente. Espere a que se complete el formato antes de intentar usar el medio.
Valor: 0xC0AA0206 |
|
La unidad informó de que está realizando una operación de ejecución prolongada, como finalizar una escritura. La unidad puede ser inutilizable durante un largo período de tiempo.
Valor: 0xC0AA0207 |
|
Error de escritura porque la unidad no recibió datos lo suficientemente rápido como para continuar escribiendo. Si se mueven los datos de origen al equipo local, se reduce la velocidad de escritura o se habilita una configuración de "búfer bajo ejecución libre" puede resolver este problema.
Valor: 0xC0AA0300 |
|
Los medios no son compatibles ni tienen un formato físico desconocido.
Valor: 0xC0AA0203 |
|
La estructura de DVD no está presente. Esto puede deberse a que se usa una unidad o medio incompatibles.
Valor: 0xC0AA020E |
|
El dispositivo informó de que la página de modo solicitado (y tipo) no está presente.
Valor: 0xC0AA0201 |
|
La unidad notificó que no se admitía la combinación de parámetros proporcionados en la página de modo para un comando MODE SELECT.
Valor: 0xC0AA0208 |
|
La unidad informó de que el medio está protegido por escritura.
Valor: 0xC0AA0209 |
|
La velocidad del medio no es compatible con el dispositivo. Esto puede deberse al uso de medios de mayor o menor velocidad que el intervalo de velocidades compatibles con el dispositivo.
Valor: 0xC0AA020F |
|
El identificador especificado no es válido.
Valor: 6 |
|
El recurso de red o el dispositivo especificados ya no se encuentran disponibles.
Valor: 55 |
|
El dispositivo asociado a esta grabadora durante la última operación se ha bloqueado exclusivamente, lo que hace que se produzca un error en esta operación.
Valor: 0xC0AA0210 |
|
Error de escritura porque la unidad devolvió información de error de la que no se pudo recuperar.
Valor: 0xC0AA0301 |
|
La solicitud requiere que se seleccione una grabadora de disco actual.
Valor: 0xC0AA0003 |
|
El tipo de rotación solicitado no era compatible con la unidad y se ajustaba el tipo de rotación.
Valor: 0x00AA0005 |
|
La velocidad de escritura solicitada no era compatible con la unidad y la velocidad se ajustaba.
Valor: 0x00AA0004 |
|
La velocidad de escritura solicitada y el tipo de rotación no fueron compatibles con la unidad y ambos se ajustaron.
Valor: 0x00AA0006 |
|
Este dispositivo no admite las operaciones requeridas por este formato de disco.
Valor: 0xC0AA0407 |
|
Se ha cancelado la solicitud.
Valor: 0xC0AA0002 |
|
Actualmente hay una operación de escritura en curso.
Valor: 0xC0AA0400 |
|
El tamaño del objeto IStream proporcionado no es válido. El tamaño debe ser un múltiplo del tamaño del sector, 2048.
Valor: 0xC0AA0403 |
|
El tipo de medio actual no es compatible.
Valor: (HRESULT)0xC0AA0406 |
|
Uno o varios argumentos no son válidos.
Valor: 0x80070057 |
|
El puntero no es válido.
Valor: 0x80004003 |
|
Error no especificado.
Valor: 0x80004005 |
|
No se pudo asignar la memoria necesaria.
Valor: 0x8007000E |
|
Sin implementar.
Valor: 0x80004001 |
Comentarios
Antes de llamar a este método, debe llamar a los métodos siguientes:
También debe considerar la posibilidad de llamar a los métodos siguientes si sus valores predeterminados no son adecuados para la aplicación:- IDiscFormat2Data::p ut_BufferUnderrunFreeDisabled
- IDiscFormat2Data::p ut_DisableConsumerDvdCompatibilityMode
- IDiscFormat2Data::p ut_ForceMediaToBeClosed
- IDiscFormat2Data::p ut_ForceOverwrite
- IDiscFormat2Data::p ut_PostgapAlreadyInImage
- IDiscFormat2Data::SetWriteSpeed
En discos grabados secuencialmente, el IStream proporcionado se graba como una nueva sesión. En los discos reescritibles, el IStream proporcionado siempre se graba a partir del sector 0, pero el objeto que proporciona la interfaz IStream también puede proporcionar la interfaz IBlockRangeList que enumera los sectores que deben grabarse. La interfaz IBlockRangeList se usa para evitar la reescritura de sectores que no han cambiado en escenarios de multisesión. Si el objeto que proporciona IStream no proporciona IBlockRangeList, se supone que todo el IStream debe grabarse.
Requisitos
Cliente mínimo compatible | Windows Vista, Windows XP con SP2 [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2003 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | imapi2.h |