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)

Consulte también

CommandCompleteFunction

USBCAMD_INTERFACE