IOCTL_AVCSTRM_CLASS IOCTL (avcstrm.h)
AV/C サブユニット ドライバーは、 IRP_MJ_INTERNAL_DEVICE_CONTROL IRP を使用し、 IoControlCode メンバーを IOCTL_AVCSTRM_CLASS に設定して、 avcstrm.sysと通信します。 ドライバーは、この要求を介して AV/C ストリーミング フィルター ドライバー (avcstrm.sys) によって提供されるすべての操作にアクセスできます。
IRP と IOCTL の詳細については、「IRP の 処理」を参照してください。
メジャー コード
[入力バッファー]
入力時に、Irp-Parameters-Others.Arguments1>> はAVC_STREAM_REQUEST_BLOCK構造体を指します。 AVC_STREAM_REQUEST_BLOCKの Function メンバーは、要求の種類を指定します。 このメンバーを直接設定しないでください。 このメンバー (および AVC_STREAM_REQUEST_BLOCK 構造体の追加メンバー) を初期化するには、INIT_AVCSTRM_HEADER マクロを使用します。 AVC_STREAM_REQUEST_BLOCKの CommandData メンバーは、要求の要求の種類固有のパラメーターを指定する共用体です。 パラメーターとその意味は、各要求 (関数コード) に記載されています。 AVCSTRM_FUNCTION列挙では、avcstrm.sysでサポートされている関数コードの一覧が提供されます。
入力バッファーの長さ
AVC_STREAM_REQUEST_BLOCK構造体の長さ。
出力バッファー
出力では、Irp-Parameters-Others.Arguments1>> は入力として渡されたAVC_STREAM_REQUEST_BLOCK構造体を指します。 要求の完了の一環として、バス ドライバーは、AVC_STREAM_REQUEST_BLOCK構造体の CommandData 共用体の特定のメンバーにドライバーの情報を入力します。
出力バッファーの長さ
AVC_STREAM_REQUEST_BLOCK構造体の長さ。
ステータス ブロック
AV/C ストリーミング ドライバーが I/O 状態ブロックで返す情報は、各要求に記載されています。
注釈
IRQL = PASSIVE_LEVELで呼び出す必要があります。
要件
要件 | 値 |
---|---|
Header | avcstrm.h (Avcstrm.h を含む) |