PFNUSBCAMD_BulkReadWrite回调函数 (usbcamdi.h)
USBCAMD_BulkReadWrite服务对指定的批量管道执行读取或写入操作。
语法
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
)
{...}
参数
[in] DeviceContext
指向相机微型驱动程序的设备上下文的指针。
[in] PipeIndex
指定批量管道的索引。
[in] Buffer
指向读取或写入缓冲区的指针。 如果读取请求的此参数设置为 NULL ,则 USBCAMD 将从与此管道关联的流的 SRB 读取队列中提取数据 SRB。 仅当已将SRB_WRITE_DATA请求提交到静止引脚时,才允许使用 NULL 缓冲区指针的写入请求。
[in] BufferLength
指定读/写缓冲区的长度(以字节为单位)。
[in] CommandComplete
指向相机微型驱动程序定义的 CommandCompleteFunction 的指针,该命令在完成批量读取或写入时调用。 此值可以为 NULL。
[in] CommandContext
指向内存块的指针,该内存块作为参数传递给相机微型驱动程序定义的 CommandCompleteFunction。
返回值
如果调用成功,USBCAMD_BulkReadWrite将返回STATUS_SUCCESS。 其他可能的错误代码包括:
返回代码 | 说明 |
---|---|
STATUS_FILE_CLOSED | 设备已移除。 |
STATUS_INVALID_PARAMETER | USBCAMD 可能出于多种原因返回STATUS_INVALID_PARAMETER,包括: PipeIndex 参数中传递的值无效。 PipeIndex 参数指定的管道类型表示无效的管道类型。 已存在批量读/写请求。 Buffer 参数为 NULL。 |
STATUS_INSUFFICIENT_RESOURCES | 资源不足,无法计划传输。 |
注解
USBCAMD 一次可以接受一个读取和一个写入请求。
USBCAMD_BulkReadWrite 在 USBCAMD 版本 1.0 中不可用。
要求
要求 | 值 |
---|---|
目标平台 | 桌面 |
标头 | usbcamdi.h (包括 Usbcamdi.h) |