次の方法で共有


HidP_GetUsages関数 (hidpi.h)

HidP_GetUsages ルーチンは、指定した 使用状況ページ 上にあり、HID レポートで ON に設定されている使用状況 、すべての HID コントロール ボタンの一覧を返します。

構文

NTSTATUS HidP_GetUsages(
  [in]      HIDP_REPORT_TYPE     ReportType,
  [in]      USAGE                UsagePage,
  [in]      USHORT               LinkCollection,
  [out]     PUSAGE               UsageList,
  [in, out] PULONG               UsageLength,
  [in]      PHIDP_PREPARSED_DATA PreparsedData,
  [out]     PCHAR                Report,
  [in]      ULONG                ReportLength
);

パラメーター

[in] ReportType

レポートの種類を識別する HIDP_REPORT_TYPE 列挙子の値を指定します。

[in] UsagePage

ボタン使用法の 使用状況ページ を指定します。 ルーチンは、この使用ページのボタンに関する情報のみを返します。

[in] LinkCollection

ボタンの使用法の リンク コレクション を指定します。 LinkCollection が 0 以外の場合、ルーチンは、このリンク コレクションに含まれるボタンに関する情報のみを返します。それ以外の場合、LinkCollection が 0 の場合、ルーチンは、PreparesedDataに関連付けられている 最上位のコレクション内のすべてのボタンに関する情報を返します。

[out] UsageList

ルーチンが ON に設定され、UsagePage で指定された使用状況ページに属しているすべてのボタンの使用法を返すために使用する呼び出し元によって割り当てられたバッファーへのポインター。

[in, out] UsageLength

入力時に、UsageList バッファーの配列要素の長さを指定します。 出力時に、指定した使用状況ページで ON に設定されているボタンの数を指定します。

[in] PreparsedData

最上位レベルのコレクションの 準備されたデータへのポインター。

[out] Report

レポートへのポインター。

[in] ReportLength

Reportにあるレポートの長さをバイト単位で指定します。

戻り値

HidP_GetUsages は、次のいずれかの状態値を返します。

リターン コード 形容
HIDP_STATUS_SUCCESS
ルーチンは、ON に設定されているすべてのボタン使用法を正常に返しました。
HIDP_INVALID_REPORT_LENGTH
レポートの長さが無効です。
HIDP_INVALID_REPORT_TYPE
指定したレポートの種類が無効です。
HIDP_STATUS_BUFFER_TOO_SMALL
UsageList バッファーが小さすぎて、指定した使用状況ページで現在 ON に設定されているすべての使用状況を保持できません。
HIDP_STATUS_INCOMPATIBLE_REPORT_ID
コレクションには、指定した種類のレポート内の指定した使用状況ページのボタンが含まれていますが、指定したレポートにそのような使用法はありません。
HIDP_STATUS_INVALID_PREPARSED_DATA
準備されたデータが無効です。
HIDP_STATUS_USAGE_NOT_FOUND
コレクションには、指定したレポートの種類のレポート内の指定した使用状況ページにボタンが含まれていません。

備考

ユーザー モード アプリケーションとカーネル モード ドライバーは、指定したレポートの種類に対して返すことができるボタンの最大数を決定する HidP_MaxUsageListLength を呼び出します。 または、アプリケーションまたはドライバーは、HidP_GetUsages を呼び出し、(*UsageLength) を 0 に設定して、UsageLength 必要な長さを返すことができます。 つまり、UsageLength は、必要な長さを取得するために 0 ULONG 値を指す有効なポインターである必要があります。

アプリケーションまたはドライバーは、最上位のコレクションの HIDP_CAPS 構造の XxxReportByteLength メンバーから必要なレポートの長さを決定します。

詳細については、「HID コレクションの」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows 2000 以降のバージョンの Windows で使用できます。
ターゲット プラットフォーム 万国
ヘッダー hidpi.h (Hidpi.h を含む)
ライブラリ Hidparse.lib
IRQL <= DISPATCH_LEVEL

関連項目

HidP_GetButtons

HidP_GetButtonsEx

HidP_GetCaps

HidP_GetScaledUsageValue

HidP_GetUsageValue

HidP_GetUsageValueArray

HidP_GetUsagesEx

HidP_MaxUsageListLength

_HIDP_PREPARSED_DATA