[KMDF と UMDF に適用]
WdfUsbInterfaceGetConfiguredPipe メソッドは、指定された USB デバイス インターフェイスとパイプ インデックスに関連付けられているフレームワーク パイプ オブジェクトへのハンドルを返します。 必要に応じて、このメソッドはパイプに関する情報も返します。
構文
WDFUSBPIPE WdfUsbInterfaceGetConfiguredPipe(
[in] WDFUSBINTERFACE UsbInterface,
[in] UCHAR PipeIndex,
[in, out, optional] PWDF_USB_PIPE_INFORMATION PipeInfo
);
パラメーター
[in] UsbInterface
WdfUsbTargetDeviceGetInterface 呼び出すことによって取得された USB インターフェイス オブジェクトへのハンドル。
[in] PipeIndex
指定したインターフェイス オブジェクトに関連付けられているフレームワーク パイプ オブジェクトのセットへの 0 から始まるインデックス。
[in, out, optional] PipeInfo
フレームワークが入力する呼び出し元によって割り当てられた WDF_USB_PIPE_INFORMATION 構造体へのポインター。 このパラメーターは省略可能であり、NULL できます。
戻り値
操作が成功した場合、WdfUsbInterfaceGetConfiguredPipe は、指定されたインターフェイス オブジェクトとパイプ インデックスに関連付けられているフレームワーク パイプ オブジェクトへのハンドルを返します。 このメソッドは、WDF_USB_PIPE_INFORMATION 構造体のサイズが正しくない場合、またはパイプ インデックス値が大きすぎる場合に、NULL を返します。
ドライバーが無効なオブジェクト ハンドルを提供すると、バグ チェックが発生します。
備考
ドライバーは、WdfUsbTargetDeviceSelectConfig 呼び出した後、WdfUsbInterfaceGetConfiguredPipe 呼び出すことができます。
WdfUsbInterfaceGetConfiguredPipe メソッドと USB I/O ターゲットの詳細については、「USB I/O ターゲットの」を参照してください。
例
次のコード例では、指定された USB インターフェイスの構成された各パイプに USB 中止要求を送信します。
BYTE count, i;
NTSTATUS status;
count = WdfUsbInterfaceGetNumConfiguredPipes(UsbInterface);
for (i = 0; i < count; i++) {
WDFUSBPIPE pipe;
pipe = WdfUsbInterfaceGetConfiguredPipe(
UsbInterface,
i,
NULL
);
status = WdfUsbTargetPipeAbortSynchronously(
pipe,
WDF_NO_HANDLE,
NULL
);
if (!NT_SUCCESS(status)) {
break;
}
}
必要条件
| 要件 | 価値 |
|---|---|
| ターゲット プラットフォーム の | 万国 |
| 最小 KMDF バージョン | 1.0 |
| UMDF の最小バージョン を する | 2.0 |
| ヘッダー | wdfusb.h (Wdfusb.h を含む) |
| ライブラリ | Wdf01000.sys (KMDF);WUDFx02000.dll (UMDF) |
| IRQL | <=DISPATCH_LEVEL |
| DDI コンプライアンス規則 を する | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExp usbKmdfIrql(kmdf) , usbKmdfIrql2(kmdf) , UsbKmdfIrqlExplicit(kmdf) |
関連項目
WdfUsbInterfaceGetNumConfiguredPipes の
WdfUsbTargetDeviceGetInterface の
WdfUsbTargetDeviceSelectConfig の