IOCTL_INTERNAL_USBFN_TRANSFER_IN_APPEND_ZERO_PKT IOCTL (usbfnioctl.h)
クラス ドライバーは、指定されたパイプへの IN 転送を開始するこの要求を送信し、転送の終了を示す長さ 0 のパケットを追加します。
メジャー コード
IRP_MJ_INTERNAL_DEVICE_CONTROL
入力バッファー
パイプ ID を指定する USBFNPIPEID 型へのポインター。
入力バッファーの長さ
USBFNPIPEID 型のサイズ。
出力バッファー
出力バッファーは、送信するデータを含むデータ バッファーを指します。 IN 方向は、デバイスからホストへの送信転送を表すホストの観点からの方向です。
出力バッファーの長さ
送信するデータのサイズ。
状態ブロック
要求が成功した場合、USB 関数クラス拡張 (UFX) はSTATUS_SUCCESS、または NT_SUCCESS(status) が TRUE の別の状態値を返します。 それ以外の場合は、NT_SUCCESS(status) が FALSE の状態値を返します。
備考
この要求は、IOCTL_INTERNAL_USBFN_ACTIVATE_USB_BUS 要求を送信した後に送信する必要があります。
UFX は、UfxEndpointCreate をして、エンドポイント用に作成された転送キューにこの IOCTL 要求を転送します。
関数コントローラーは、エンドポイントで IN 方向の転送を開始し、データ バッファーに指定されたデータが正常に送信された後に、長さ 0 のパケット転送を自動的に追加します。 転送ペイロードのサイズがエンドポイントの最大パケット サイズの倍数である場合にのみ、長さ 0 のパケットがコントローラーによって追加されます。
必要条件
要件 | 価値 |
---|---|
ヘッダー | usbfnioctl.h |