次の方法で共有


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

関連項目

HidD_GetIndexedString

HidD_GetPhysicalDescriptor

HidD_GetSerialNumberString

IOCTL_HID_GET_INDEXED_STRING

IOCTL_HID_GET_MANUFACTURER_STRING

IOCTL_HID_GET_PRODUCT_STRING

IOCTL_HID_GET_SERIALNUMBER_STRING