WinUsb_GetAssociatedInterface 函数 (winusb.h)

WinUsb_GetAssociatedInterface函数检索关联接口的句柄。 这是一个同步操作。

语法

BOOL WinUsb_GetAssociatedInterface(
  [in]  WINUSB_INTERFACE_HANDLE  InterfaceHandle,
  [in]  UCHAR                    AssociatedInterfaceIndex,
  [out] PWINUSB_INTERFACE_HANDLE AssociatedInterfaceHandle
);

参数

[in] InterfaceHandle

设备上第一个 (默认) 接口的不透明句柄, 由 WinUsb_Initialize 返回。

[in] AssociatedInterfaceIndex

指定要检索的关联接口的索引。 值为 0 表示第一个关联的接口,值为 1 表示第二个关联的接口,依依此。

[out] AssociatedInterfaceHandle

关联接口的句柄。 调用方必须将此接口句柄传递给 Winusb.dll 公开的 WinUSB 函数 。 若要关闭此句柄,请调用 WinUsb_Free

返回值

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

返回代码 说明
ERROR_ALREADY_EXISTS

WinUsb_GetAssociatedInterface 已返回 AssociatedInterfaceIndex 指定的接口的句柄。

ERROR_INVALID_HANDLE
调用 方在InterfaceHandle 参数中传递 NULL。
ERROR_INVALID_PARAMETER
传递的 AssociatedInterfaceIndex 值检查整数溢出失败。
ERROR_NO_MORE_ITEMS
指定的 AssociatedInterfaceIndex 值不存在接口
ERROR_NOT_ENOUGH_MEMORY
指示内存不足,无法执行操作。

注解

WinUsb_GetAssociatedInterface例程检索不透明句柄。

第一个关联的接口是紧跟在处理WinUsb_Initialize例程检索的接口之后的接口。

必须通过调用 WinUsb_Free 释放WinUsb_GetAssociatedInterface 返回 的句柄

WinUsb_GetAssociatedInterface 的调用方只能为每个接口检索一个句柄。 如果调用方尝试检索同一接口的多个句柄,则例程将失败并出现错误ERROR_ALREADY_EXISTS。

要求

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

另请参阅

WinUSB

WinUSB 函数

WinUsb_Initialize