PFNUSBCAMD_BulkReadWrite función de devolución de llamada (usbcamdi.h)
El servicio USBCAMD_BulkReadWrite realiza una operación de lectura o escritura en la canalización masiva especificada.
Sintaxis
PFNUSBCAMD_BulkReadWrite PfnusbcamdBulkreadwrite;
NTSTATUS PfnusbcamdBulkreadwrite(
[in] PVOID DeviceContext,
[in] USHORT PipeIndex,
[in] PVOID Buffer,
[in] ULONG BufferLength,
[in] PCOMMAND_COMPLETE_FUNCTION CommandComplete,
[in] PVOID CommandContext
)
{...}
Parámetros
[in] DeviceContext
Puntero al contexto del dispositivo del minidriver de la cámara.
[in] PipeIndex
Especifica el índice de la canalización masiva.
[in] Buffer
Puntero al búfer de lectura o escritura. Si este parámetro se establece en NULL para una solicitud de lectura, USBCAMD extrae un SRB de datos de la cola de lectura de SRB de la secuencia asociada a esta canalización. Las solicitudes de escritura con un puntero de búfer NULL solo se permiten en la patilla fija si se ha enviado una solicitud de SRB_WRITE_DATA al pin todavía.
[in] BufferLength
Especifica la longitud del búfer de lectura y escritura en bytes.
[in] CommandComplete
Puntero a un minidriver de cámara definido CommandCompleteFunction, al que se llama cuando se completa la lectura o escritura masivas. Este valor puede ser NULL.
[in] CommandContext
Puntero a un bloque de memoria, que se pasa como argumento al minidriver de cámara definido CommandCompleteFunction.
Valor devuelto
USBCAMD_BulkReadWrite devuelve STATUS_SUCCESS si la llamada se realizó correctamente. Otros posibles códigos de error son:
Código devuelto | Descripción |
---|---|
STATUS_FILE_CLOSED | Se ha quitado el dispositivo. |
STATUS_INVALID_PARAMETER | USBCAMD puede devolver STATUS_INVALID_PARAMETER por varios motivos, entre los que se incluyen: El valor pasado en el argumento PipeIndex no es válido. El tipo de la canalización especificada por el argumento PipeIndex representa un tipo de canalización no válido. Ya existe una solicitud de lectura y escritura masiva. El argumento Buffer es NULL. |
STATUS_INSUFFICIENT_RESOURCES | No hay recursos suficientes para programar una transferencia. |
Comentarios
USBCAMD puede aceptar una solicitud de lectura y escritura a la vez.
USBCAMD_BulkReadWrite no está disponible en USBCAMD versión 1.0.
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Escritorio |
Encabezado | usbcamdi.h (incluya Usbcamdi.h) |