次の方法で共有


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

ベンダー コマンドの Value フィールドの値を指定します。

[in] Index

ベンダー コマンドの 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 vendor コマンドは遅延されます。
STATUS_INSUFFICIENT_RESOURCES ベンダー コマンドを割り当てるためのリソースが不足しています。

備考

この関数は、IRQL >= PASSIVE_LEVELで呼び出される場合があります。 IRQL > PASSIVE_LEVEL で関数が呼び出された場合、コマンドは遅延されます。 完了後、CommandCompleteFunction 定義されたカメラ ミニドライバーが呼び出され、CommandContext 引数 ** の値が渡されます。

必要条件

要件 価値
ターゲット プラットフォーム デスクトップ
ヘッダー usbcamdi.h (Usbcamdi.h を含む)
ライブラリ Usbcamd2.lib
IRQL PASSIVE_LEVEL以上 (「解説」セクションを参照)

関連項目

CommandCompleteFunction