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程式代碼。
其他可能的錯誤碼包括:
傳回碼 | Description |
---|---|
STATUS_PENDING | 廠商命令會延遲。 |
STATUS_INSUFFICIENT_RESOURCES | 資源不足,無法配置廠商命令。 |
備註
此函式可以在 IRQL >= PASSIVE_LEVEL呼叫。 如果在 IRQL > PASSIVE_LEVEL呼叫函式,命令會延後。 完成後,會呼叫相機 minidriver 定義的 CommandCompleteFunction ,並在 CommandContext 自變數*中傳遞值。*
規格需求
需求 | 值 |
---|---|
目標平台 | 桌面 |
標頭 | usbcamdi.h (包含 Usbcamdi.h) |
程式庫 | Usbcamd2.lib |
IRQL | 大於或等於PASSIVE_LEVEL (请参阅一节) |