HidD_GetFeature function (hidsdi.h)
The HidD_GetFeature routine returns a feature report from a specified top-level collection.
Syntax
BOOLEAN HidD_GetFeature(
[in] HANDLE HidDeviceObject,
[out] PVOID ReportBuffer,
[in] ULONG ReportBufferLength
);
Parameters
[in] HidDeviceObject
An open handle to a top-level collection.
[out] ReportBuffer
Pointer to a caller-allocated HID report buffer that the caller uses to specify a report ID. HidD_GetFeature uses ReportBuffer to return the specified feature report.
For more information about this parameter, see the Remarks section.
[in] ReportBufferLength
The size of the report buffer in bytes. The report buffer must be large enough to hold the feature report plus one additional byte that specifies a nonzero report ID. If report ID is not used, the ID value is zero.
Return value
If HidD_GetFeature succeeds, it returns TRUE; otherwise, it returns FALSE. Use GetLastError to get extended error information.
Remarks
The correct ReportBufferLength is specified by the FeatureReportByteLength member of a top-level collection's HIDP_CAPS structure returned from HidP_GetCaps call.
Before it calls the HidD_GetFeature routine, the caller must do the following:
- If the top-level collection includes report IDs, the caller must set the first byte of the ReportBuffer parameter to a nonzero report ID.
- If the top-level collection does not include report IDs, the caller must set the first byte of the ReportBuffer parameter to zero.
The feature report is returned in the ReportBuffer parameter. Depending on the report ID, the caller parses the report by calling one of the following functions:
- HidP_GetButtonCaps
- HidP_GetData
- HidP_GetExtendedAttributes
- HidP_GetScaledUsageValue
- HidP_GetSpecificButtonCaps
- HidP_GetSpecificValueCaps
- HidP_GetUsages
- HidP_GetUsagesEx
- HidP_GetUsageValue
- HidP_GetUsageValueArray
- HidP_GetValueCaps
For an example of how to parse a HID report, see the HClient sample application. This sample is located in the MSDN Code Gallery.
Only user-mode applications can call HidD_GetFeature. Kernel-mode drivers can use an IOCTL_HID_GET_FEATURE request.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Available in Windows 2000 and later versions of Windows. |
Target Platform | Universal |
Header | hidsdi.h (include Hidsdi.h) |
Library | Hid.lib |
DLL | Hid.dll |