共用方式為


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

指定 HIDP_REPORT_TYPE 列舉值,指出位於 Report之 HID 報表的類型。

[in, out] DataList

HIDP_DATA 結構的呼叫端配置數位指標,指定要設定的按鈕和用法值。

[in, out] DataLength

在輸入上,指定 DataList 陣列中的成員數目。 如需輸出值的相關信息,請參閱一節。

[in] PreparsedData

最上層 預先剖析資料的指標

[in] Report

HID 報表的指標。

[in] ReportLength

指定位於 Report之 HID 報表的大小,其必須等於集合 HIDP_CAPS 結構中傳回之指定報表 HidP_GetCaps 類型的報表長度。

傳回值

如果 HidP_SetData 成功設定 dataList 所指定的所有控件數據,HidP_SetData 會傳回HIDP_STATUS_SUCCESS。

如果其中一個輸入參數無效,HidP_SetData 會傳回下列其中一個狀態值:

傳回碼 描述
HIDP_STATUS_INVALID_PREPARSED_DATA
PreparsedData 所指定的預先剖析數據無效。
HIDP_STATUS_INVALID_REPORT_LENGTH
HID 報表的大小,以位元組為單位,不等於集合中指定之報表類型之 HIDP_CAPS 結構中指定的長度。
HIDP_STATUS_INVALID_REPORT_TYPE
ReportType 無效。
HIDP_STATUS_REPORT_DOES_NOT_EXIST
集合不包含指定型別的報表。
 

如果無法設定其中一個指定的按鈕或使用值,HidP_SetData會傳回下列其中一個錯誤值:

傳回碼 描述
HIDP_STATUS_BUFFER_TOO_SMALL
數位中的按鈕未設定為 ON (1),因為所有數位列欄位都已經用來編制其他按鈕的索引。
HIDP_STATUS_BUTTON_NOT_PRESSED
DataList 成員指定設定按鈕 OFF (零),但該按鈕已設定為 OFF。
HIDP_STATUS_DATA_INDEX_NOT_FOUND
DataList 成員的數據索引無效。
HIDP_STATUS_INCOMPATIBLE_REPORT_ID
按鈕或使用量值包含在報表中,但不在指定的報表中。
HIDP_STATUS_IS_VALUE_ARRAY
資料索引會指定 使用值數組

言論

除了使用值數位之外,使用者模式應用程式或內核模式驅動程式可以使用 HidP_SetData 來設定報表中的按鈕和使用量值。 若要設定使用值陣列,應用程式或驅動程式必須使用 HidP_SetUsageValueArray

HidP_SetData 會設定 dataLength 的輸出值,如下所示:

如需詳細資訊,請參閱 HID 集合

要求

要求 價值
最低支援的用戶端 適用於 Windows 2000 和更新版本的 Windows。
目標平臺 普遍
標頭 hidpi.h (包括 Hidpi.h)
連結庫 Hidparse.lib
IRQL PASSIVE_LEVEL

另請參閱

HIDP_DATA

HidP_GetData

HidP_SetButtons

HidP_SetUsageValueArray

HidP_SetUsages

HidP_UnsetButtons

HidP_UnsetUsages

_HIDP_PREPARSED_DATA