HidP_SetData関数 (hidpi.h)
HidP_SetData ルーチンは、HID レポートで指定された HID コントロール ボタンと値の使用法のセットを設定します。
構文
NTSTATUS HidP_SetData(
[in] HIDP_REPORT_TYPE ReportType,
[in, out] PHIDP_DATA DataList,
[in, out] PULONG DataLength,
[in] PHIDP_PREPARSED_DATA PreparsedData,
[in] PCHAR Report,
[in] ULONG ReportLength
);
パラメーター
[in] ReportType
レポート にある HID レポートの種類を示す HIDP_REPORT_TYPE 列挙子の値指定します。
[in, out] DataList
設定するボタンと使用値を指定する HIDP_DATA 構造体の呼び出し元によって割り当てられた配列へのポインター。
[in, out] DataLength
入力時に、DataList 配列内のメンバーの数を指定します。 出力値の詳細については、「解説」セクションを参照してください。
[in] PreparsedData
最上位レベルの 準備済みデータへのポインター。
[in] Report
HID レポートへのポインター。
[in] ReportLength
レポートにある HID レポートのサイズ (バイト単位) を指定します。これは、コレクションの HIDP_CAPS 構造体で返 HidP_GetCaps 指定したレポートの種類のレポートの長さと同じである必要があります。
戻り値
HidP_SetData は、DataList で指定されたすべてのコントロール データ正常に設定された場合、HIDP_STATUS_SUCCESSを返します。
入力パラメーターのいずれかが無効な場合、HidP_SetData は次のいずれかの状態値を返します。
リターン コード | 形容 |
---|---|
|
PreparesedData で指定された準備済みデータが無効です。 |
|
HID レポートのサイズ (バイト単位) は、指定したレポートの種類のコレクションの HIDP_CAPS 構造体で指定された長さと等しくありません。 |
|
ReportType が無効です。 |
|
コレクションに、指定した型のレポートが含まれていません。 |
指定したボタンまたは使用状況の値のいずれかを設定できなかった場合、HidP_SetDataは次のいずれかのエラー値を返します。
リターン コード | 形容 |
---|---|
|
配列内のボタンが ON (1) に設定されていないのは、すべての配列フィールドが既に他のボタンのインデックス付けに使用されているためです。 |
|
DataList メンバーは、ボタンを OFF (ゼロ) に設定することを指定しますが、ボタンは既に OFF に設定されています。 |
|
DataList メンバーのデータ インデックスが無効です。 |
|
ボタンまたは使用状況の値はレポートに含まれていますが、指定されたレポートには含まれません。 |
|
データ インデックスは、使用法値の配列を指定します。 |
備考
使用値配列を除き、ユーザー モード アプリケーションまたはカーネル モード ドライバーでは、HidP_SetData を使用して、レポート内のボタンと使用状況の値を設定できます。 使用値配列を設定するには、アプリケーションまたはドライバーで HidP_SetUsageValueArrayを使用する必要があります。
HidP_SetData、DataLength の出力値 次のように設定します。
詳細については、「HID コレクションの」を参照してください。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 2000 以降のバージョンの Windows で使用できます。 |
ターゲット プラットフォーム の | 万国 |
ヘッダー | hidpi.h (Hidpi.h を含む) |
ライブラリ | Hidparse.lib |
IRQL | PASSIVE_LEVEL |