共用方式為


HidP_GetData函式 (hidpi.h)

HidP_GetData 例程會針對指定的報表傳回 HIDP_DATA 結構的數位,可識別目前設定為 ON (1) 之所有 HID 控制項按鈕 數據索引,以及與所有 HID 控制項值相關聯的數據索引和數據。

語法

NTSTATUS HidP_GetData(
  [in]      HIDP_REPORT_TYPE     ReportType,
  [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 報表的類型。

[out] DataList

指定呼叫端配置的HIDP_DATA結構數位,例程會使用此陣列傳回目前設定為 ON 的所有按鈕相關信息,以及與值相關聯的數據。

[in, out] DataLength

在輸入上,指定呼叫端配置 DataList 陣列保留的結構數目。 指定輸出時,例程可以傳回數據的控件數目,其中包括目前設定為 ON 的所有按鈕和所有控制件值。

[in] PreparsedData

與位於 報表之 HID 報表相關聯之最上層集合之預先剖析 數據 的指標。

[in] Report

HID 報表的指標。

[in] ReportLength

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

傳回值

HidP_GetData 傳回下列其中一個狀態值:

傳回碼 描述
HIDP_STATUS_SUCCESS
已成功傳回所有控制件數據。
HIDP_STATUS_INVALID_REPORT_TYPE
ReportType 所指定的報表類型無效
HIDP_STATUS_INVALID_PREPARSED_DATA
PreparsedData 所指定的預先剖析數據無效
HIDP_STATUS_INVALID_REPORT_LENGTH
HID 報表的大小,以位元組為單位,不等於集合中指定之報表類型之 HIDP_CAPS 結構中指定的長度。
HIDP_STATUS_REPORT_DOES_NOT_EXIST
最上層集合沒有指定類型的報表。
HIDP_STATUS_BUFFER_TOO_SMALL
DataList 陣列太小,無法描述所有按鈕、目前設定為 ON,以及 HID 報表中的所有值。

言論

使用者模式應用程式和內核模式驅動程式會呼叫 HidP_MaxDataListLength,以判斷 HidP_GetData 可以傳回的最大可能HIDP_DATA結構數目。

HidP_GetData 不會傳回 使用值陣列的數據。

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

要求

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

另請參閱

HIDP_DATA

HidP_MaxDataListLength

HidP_SetData

_HIDP_PREPARSED_DATA