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 來擷取記錄的錯誤。
傳回碼 | Description |
---|---|
|
WinUsb_GetAssociatedInterface 已傳回 AssociatedInterfaceIndex 所指定介面的句柄。 |
|
呼叫端在 InterfaceHandle 參數中傳遞 NULL。 |
|
傳遞的 AssociatedInterfaceIndex 值失敗了整數溢位檢查。 |
|
指定的 AssociatedInterfaceIndex 值不存在介面。 |
|
表示記憶體不足,無法執行作業。 |
備註
WinUsb_GetAssociatedInterface例程會擷取不透明句柄。
第一個相關聯的介面是緊接在處理WinUsb_Initialize例程擷取之介面之後的介面。
WinUsb_GetAssociatedInterface傳回的句柄必須藉由呼叫 WinUsb_Free 來釋放。
WinUsb_GetAssociatedInterface呼叫端只能擷取每個介面的一個句柄。 如果呼叫端嘗試擷取相同介面的多個句柄,例程將會失敗,並出現錯誤ERROR_ALREADY_EXISTS。
規格需求
需求 | 值 |
---|---|
目標平台 | Universal |
標頭 | winusb.h (包含 Winusb.h) |
程式庫 | Winusb.lib |
Dll | Winusb.dll |