次の方法で共有


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 をプルします。 NULL バッファー ポインターを持つ書き込み要求は、SRB_WRITE_DATA要求が引き続きピンに送信されている場合にのみ、引き続きピンで許可されます。

[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 は、一度に 1 つの読み取りと 1 つの書き込み要求を受け入れます。

USBCAMD_BulkReadWrite は USBCAMD バージョン 1.0 では使用できません。

必要条件

要件 価値
ターゲット プラットフォーム デスクトップ
ヘッダー usbcamdi.h (Usbcamdi.h を含む)

関連項目

CommandCompleteFunction

USBCAMD_INTERFACE