WinUsb_QueryPipeEx 函数 (winusb.h)

WinUsb_QueryPipeEx 函数检索有关指定终结点和接口的关联管道的扩展信息。

语法

BOOL WinUsb_QueryPipeEx(
  [in]  WINUSB_INTERFACE_HANDLE     InterfaceHandle,
  [in]  UCHAR                       AlternateSettingNumber,
  [in]  UCHAR                       PipeIndex,
  [out] PWINUSB_PIPE_INFORMATION_EX PipeInformationEx
);

参数

[in] InterfaceHandle

接口的不透明句柄,该接口包含与管道关联的终结点。

若要查询与第一个接口中的终结点关联的管道,请使用 WinUsb_Initialize返回的句柄。 对于所有其他接口,请使用目标接口的句柄, WinUsb_GetAssociatedInterface检索。

[in] AlternateSettingNumber

一个 值,该值指定要返回其信息的备用接口。

[in] PipeIndex

一个 值,该值指定要返回相关信息的管道。 此值与终结点描述符中的 bEndpointAddress 字段不同。 PipeIndex 值为 0 表示与接口关联的第一个终结点,值为 1 表示第二个终结点,依此。 PipeIndex 必须小于接口描述符的 bNumEndpoints 字段中的值。

[out] PipeInformationEx

指向调用方分配 的包含 管道信息的WINUSB_PIPE_INFORMATION_EX结构的指针。

返回值

如果操作成功,WinUsb_QueryPipeEx返回 TRUE。 否则,此函数返回 FALSE,调用方可以通过调用 GetLastError 检索记录的错误。

GetLastError 可以返回以下错误代码。

返回代码 说明
ERROR_INVALID_HANDLE
调用方在 InterfaceHandle 参数中传递 NULL
ERROR_INVALID_PARAMETER
调用方在 PipeInformation 参数中传递了 NULL;找不到 InterfaceHandle 中指定的句柄的接口描述符。
ERROR_NO_MORE_ITEMS
在 PipeIndex 参数中传递的值大于接口描述符的 bNumEndpoints 值;找不到指定接口的终结点描述符。

注解

WinUsb_QueryPipeEx 函数不检索有关控件管道的信息。

要求

要求
目标平台 通用
标头 winusb.h (包括 Winusb.h)
Library Winusb.lib
DLL Winusb.dll

另请参阅

发送来自 UWP 桌面应用的 USB 常时等量传输

WINUSB_PIPE_INFORMATION

WinUSB

WinUSB 函数

WinUsb_Initialize