UsbBuildInterruptOrBulkTransferRequest 巨集 (usbdlib.h)
UsbBuildInterruptOrBulkTransferRequest 巨集會格式化 URB 在大量管道上傳送或接收數據,或從中斷管道接收數據。
語法
void UsbBuildInterruptOrBulkTransferRequest(
[in, out] urb,
[in] length,
[in] pipeHandle,
[in, optional] transferBuffer,
[in, optional] transferBufferMDL,
[in] transferBufferLength,
[in] transferFlags,
[in] link
);
參數
[in, out] urb
要格式化為中斷或大量傳輸要求的 URB 指標。
[in] length
指定 URB的大小,以位元組為單位。
[in] pipeHandle
指定選取組態時 HCD 所傳回之此管道的句柄。
[in, optional] transferBuffer
傳送的常駐緩衝區指標,如果 MDL 是在 transferBufferMDL中提供,則為 NULL。 此緩衝區的內容取決於 TransferFlags的值。 如果指定了USBD_TRANSFER_DIRECTION_IN,此緩衝區會包含從 HCD 傳回時從裝置讀取的數據。 否則,此緩衝區會包含要傳送至裝置的驅動程式提供數據。
[in, optional] transferBufferMDL
描述常駐緩衝區的 MDL 指標,如果 TransferBuffer中提供緩衝區,則為 NULL。 緩衝區的內容取決於 TransferFlags的值。 如果指定了USBD_TRANSFER_DIRECTION_IN,描述的緩衝區將會包含從 HCD 傳回時從裝置讀取的數據。 否則,緩衝區會包含要傳送至裝置的驅動程式提供數據。 MDL 必須從非分頁集區配置。
[in] transferBufferLength
指定 TransferBuffer 中指定的緩衝區長度,以位元組為單位,或 TransferBufferMDL中所述。
[in] transferFlags
指定下列旗標的零、一或組合:
USBD_TRANSFER_DIRECTION_IN
設定為向裝置要求數據。 若要將數據傳輸到裝置,此旗標必須清楚。
USBD_SHORT_TRANSFER_OK
設定USBD_TRANSFER_DIRECTION_IN時可以使用。 如果已設定,則指示 HCD 不會在從比端點封包大小上限短的裝置收到封包時傳回錯誤。 否則,簡短要求會傳回錯誤條件。
[in] link
保留。 必須設定為 NULL。
傳回值
沒有
要求
要求 | 價值 |
---|---|
目標平臺 | 桌面 |
標頭 | usbdlib.h (包括 Usbdlib.h) |