WinUsb_QueryInterfaceSettings関数 (winusb.h)

WinUsb_QueryInterfaceSettings関数は、特定のインターフェイス ハンドルに対して指定された代替インターフェイス設定のインターフェイス記述子を取得します。

構文

BOOL WinUsb_QueryInterfaceSettings(
  [in]  WINUSB_INTERFACE_HANDLE   InterfaceHandle,
  [in]  UCHAR                     AlternateInterfaceNumber,
  [out] PUSB_INTERFACE_DESCRIPTOR UsbAltInterfaceDescriptor
);

パラメーター

[in] InterfaceHandle

選択した構成のインターフェイスへの不透明なハンドル。

最初のインターフェイスの設定を取得するには、 WinUsb_Initializeによって返されるハンドルを使用します。 その他のすべてのインターフェイスでは、 WinUsb_GetAssociatedInterfaceによって取得されたターゲット インターフェイスへのハンドルを使用します。

[in] AlternateInterfaceNumber

返す代替設定を示す値。 値 0 は最初の代替設定を示し、値 1 は 2 番目の代替設定を示します。

[out] UsbAltInterfaceDescriptor

AlternateSettingNumber が指定したインターフェイスに関する情報を含む、呼び出し元によって割り当てられたUSB_INTERFACE_DESCRIPTOR構造体へのポインター。

戻り値

操作が 成功した場合、WinUsb_QueryInterfaceSettings は TRUE を 返します。 それ以外の場合は FALSE が返され、呼び出し元は GetLastError を呼び出すことによってログに記録されたエラーを取得できます。

GetLastError は 、次のエラー コードを返すことができます。

リターン コード 説明
ERROR_INVALID_HANDLE
呼び出し元が InterfaceHandle パラメーターに NULL を渡しました。
ERROR_NO_MORE_ITEMS
指定された代替インターフェイスが見つかりませんでした。

解説

WinUsb_QueryInterfaceSettings は、WinUsb_Initializeによって以前に取得された構成記述子を解析 します。 詳細については、 WinUsb_Initializeの「解説」セクションを参照してください。

WinUsb_QueryInterfaceSettings呼び出しは、AlternateSettingNumber で呼び出し元によって渡されたインターフェイス インデックスで指定された代替インターフェイスのインターフェイス配列を検索します。 指定したインターフェイスが見つかった場合、関数は呼び出し元によって割り当てられた USB_INTERFACE_DESCRIPTOR 構造体を設定します。 指定したインターフェイスが見つからない場合、呼び出しはERROR_NO_MORE_ITEMSコードで失敗します。

要件

   
対象プラットフォーム ユニバーサル
Header winusb.h (Winusb.h を含む)
Library Winusb.lib
[DLL] Winusb.dll

関連項目

USB_INTERFACE_DESCRIPTOR

WinUSB

WinUSB 関数

WinUsb_Initialize