USBCAMD_ControlVendorCommand函数 (usbcamdi.h)
USBCAMD_ControlVendorCommand 函数将特定于供应商的命令发送到控制管道。
语法
NTSTATUS USBCAMD_ControlVendorCommand(
[in] PVOID DeviceContext,
[in] UCHAR Request,
[in] USHORT Value,
[in] USHORT Index,
[in, out, optional] PVOID Buffer,
[in, out] PULONG BufferLength,
[in] BOOLEAN GetData,
[in, optional] PCOMMAND_COMPLETE_FUNCTION CommandComplete,
[in, optional] PVOID CommandContext
);
参数
[in] DeviceContext
指向特定于设备的上下文的指针。
[in] Request
指定供应商命令的 请求 字段的值。
[in] Value
指定供应商命令的“值”字段的值。
[in] Index
指定供应商命令的 索引 字段的值。
[in, out, optional] Buffer
如果命令具有数据,则指向数据缓冲区的指针。 如果该命令没有任何数据,则此值 NULL。
[in, out] BufferLength
指向缓冲区长度值的指针。 缓冲区长度以字节表示。 如果 Buffer 的值 NULL,则 BufferLength 也可能 NULL。
[in] GetData
GetData 指示数据是从设备发送到主机的。
[in, optional] CommandComplete
指向定义 CommandCompleteFunction定义的相机微型驱动程序的指针,该驱动程序在大容量读取或写入完成后调用。 此值可以 NULL。
[in, optional] CommandContext
指向内存块的指针,该块作为参数传递给 CommandCompleteFunction定义的相机微型驱动程序。
返回值
USBCAMD_ControlVendorCommand 从供应商命令返回 NTSTATUS 代码。
其他可能的错误代码包括:
返回代码 | 描述 |
---|---|
STATUS_PENDING | 供应商命令延迟。 |
STATUS_INSUFFICIENT_RESOURCES | 没有足够的资源来分配供应商命令。 |
言论
可以在 IRQL >= PASSIVE_LEVEL调用此函数。 如果在 IRQL > PASSIVE_LEVEL 调用函数,则命令将延迟。 完成后,调用 CommandCompleteFunction 定义的相机微型驱动程序,并在 CommandContext 参数*中传递值。*
要求
要求 | 价值 |
---|---|
目标平台 | 桌面 |
标头 | usbcamdi.h (包括 Usbcamdi.h) |
库 | Usbcamd2.lib |
IRQL | 大于或等于PASSIVE_LEVEL(请参阅“备注”部分) |