HidD_GetProductString関数 (hidsdi.h)
HidD_GetProductString ルーチンは、製造元の製品を識別する 最上位のコレクション の埋め込み文字列を返します。
構文
BOOLEAN HidD_GetProductString(
[in] HANDLE HidDeviceObject,
[out] PVOID Buffer,
[in] ULONG BufferLength
);
パラメーター
[in] HidDeviceObject
最上位のコレクションに対する開いているハンドルを指定します。
[out] Buffer
要求された製品文字列を返すためにルーチンが使用する呼び出し元によって割り当てられたバッファーへのポインター。 このルーチンは、NULL で終わるワイド文字列を返します。
[in] BufferLength
Bufferで提供される呼び出し元割り当てバッファーの長さをバイト単位で指定します。 バッファーが NULL で終わる埋め込み文字列全体を返すのに十分な大きさでない場合、ルーチンはバッファー内で何も返しません。 指定するバッファーは、<= 4093 バイト (2^12 – 3) である必要があります。
戻り値
HidD_GetProductString は、NULL で終わる埋め込み文字列全体 正常に返された場合に TRUE を返します。 それ以外の場合、ルーチンは FALSE 返します。 GetLastError を使用して、拡張エラー情報を取得します。
備考
HidD_GetProductStringを呼び出すことができるのは、ユーザー モード アプリケーションだけです。 カーネル モード ドライバーは、IOCTL_HID_GET_PRODUCT_STRING 要求を使用できます。
埋め込み文字列内の可能な最大文字数は、デバイス固有です。 USB デバイスの場合、文字列の最大長は 126 文字です (終端の NULL 文字は含まれません)。
特定のインターフェイスの USB_DEVICE_DESCRIPTOR 構造体の iProduct メンバーは、次の規則に基づいて、USB 共通クラス汎用親ドライバー によって設定されます。
インターフェイスの USB_INTERFACE_DESCRIPTOR 構造体の iInterface メンバーが 0 以外の場合、インターフェイスのUSB_DEVICE_DESCRIPTOR構造体の iProduct メンバーは、USB_INTERFACE_DESCRIPTOR構造体の iInterface メンバーに設定されます。
インターフェイスが USB インターフェイス関連付け記述子 によってグループ化され、インターフェイスのインターフェイス関連付け記述子の iFunction メンバーが 0 以外の場合、インターフェイスのUSB_DEVICE_DESCRIPTOR構造体の iProduct メンバーは、インターフェイス関連付け記述子の iFunction メンバーに設定されます。
指定されたバッファーが <= 4093 バイト (2^12 – 3) でない場合、(基になるプロトコル、HID/Bluetooth/SPI に応じて) エラー コード ERROR_GEN_FAILURE (0x0000001f) で呼び出しが失敗する可能性があります
詳細については、「HID コレクションの」を参照してください。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 2000 以降のバージョンの Windows で使用できます。 |
ターゲット プラットフォーム の | 万国 |
ヘッダー | hidsdi.h (Hidsdi.h を含む) |
ライブラリ | Hid.lib |
DLL | Hid.dll |