WdfUsbInterfaceGetConfiguredPipe 函数 (wdfusb.h)

[适用于 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

从零开始的索引到与指定接口对象关联的框架管道对象集中。

[in, out, optional] PipeInfo

指向框架填充的调用方分配 WDF_USB_PIPE_INFORMATION 结构的指针。 此参数是可选的,可以 NULL

返回值

如果作成功,WdfUsbInterfaceGetConfiguredPipe 返回与指定接口对象和管道索引关联的框架管道对象的句柄。 如果 WDF_USB_PIPE_INFORMATION 结构的大小不正确或管道索引值过大,则该方法返回 NULL

如果驱动程序提供无效的对象句柄,则会发生 bug 检查。

言论

驱动程序可以在调用 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),KmdfIrqlExplicit(kmdf)、UsbKmdfIrql(kmdf)UsbKmdfIrql2(kmdf)、UsbKmdfIrqlExplicit(kmdf)

另请参阅

WDF_USB_PIPE_INFORMATION

WdfUsbInterfaceGetNumConfiguredPipes

WdfUsbTargetDeviceGetInterface

WdfUsbTargetDeviceSelectConfig