Macro UsbBuildInterruptOrBulkTransferRequest (usbdlib.h)
La macro UsbBuildInterruptOrBulkTransferRequest da formato a un URB para enviar o recibir datos en una canalización masiva, o para recibir datos de una canalización de interrupción.
Sintaxis
void UsbBuildInterruptOrBulkTransferRequest(
[in, out] urb,
[in] length,
[in] pipeHandle,
[in, optional] transferBuffer,
[in, optional] transferBufferMDL,
[in] transferBufferLength,
[in] transferFlags,
[in] link
);
Parámetros
[in, out] urb
Puntero a un URB al que se va a dar formato como una solicitud de interrupción o transferencia masiva.
[in] length
Especifica el tamaño, en bytes, del URB.
[in] pipeHandle
Especifica el identificador de esta canalización devuelta por el HCD cuando se seleccionó una configuración.
[in, optional] transferBuffer
Puntero a un búfer residente para la transferencia o es NULL si se proporciona una MDL en TransferBufferMDL. El contenido de este búfer depende del valor de TransferFlags. Si se especifica USBD_TRANSFER_DIRECTION_IN, este búfer contendrá los datos leídos del dispositivo a cambio de HCD. De lo contrario, este búfer contiene los datos proporcionados por el controlador que se van a transferir al dispositivo.
[in, optional] transferBufferMDL
Puntero a una MDL que describe un búfer residente o es NULL si se proporciona un búfer en TransferBuffer. El contenido del búfer depende del valor de TransferFlags. Si se especifica USBD_TRANSFER_DIRECTION_IN, el búfer descrito contendrá los datos leídos del dispositivo a cambio de HCD. De lo contrario, el búfer contiene los datos proporcionados por el controlador que se van a transferir al dispositivo. La MDL debe asignarse desde un grupo no paginado.
[in] transferBufferLength
Especifica la longitud, en bytes, del búfer especificado en TransferBuffer o descrito en TransferBufferMDL.
[in] transferFlags
Especifica cero, uno o una combinación de las marcas siguientes:
USBD_TRANSFER_DIRECTION_IN
Se establece para solicitar datos desde un dispositivo. Para transferir datos a un dispositivo, esta marca debe estar desactivada.
USBD_SHORT_TRANSFER_OK
Se puede usar si se establece USBD_TRANSFER_DIRECTION_IN. Si se establece, dirige el HCD para que no devuelva un error si se recibe un paquete del dispositivo que es más corto que el tamaño máximo del paquete para el punto de conexión. De lo contrario, una solicitud corta devuelve una condición de error.
[in] link
Reservado. Debe establecerse en NULL.
Valor devuelto
None
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Escritorio |
Encabezado | usbdlib.h (incluya Usbdlib.h) |
Consulte también
Referencia de programación del controlador de dispositivo USB