HidP_GetUsageValueArray 함수(hidpi.h)
HidP_GetUsageValueArray 루틴은 HID 보고서에서 HID 컨트롤 사용량 값 배열과 연결된 데이터를 추출합니다.
구문
NTSTATUS HidP_GetUsageValueArray(
[in] HIDP_REPORT_TYPE ReportType,
[in] USAGE UsagePage,
[in] USHORT LinkCollection,
[in] USAGE Usage,
[in, out] PCHAR UsageValue,
[in] USHORT UsageValueByteLength,
[in] PHIDP_PREPARSED_DATA PreparsedData,
[in] PCHAR Report,
[in] ULONG ReportLength
);
매개 변수
[in] ReportType
보고서 형식을 식별하는 HIDP_REPORT_TYPE 열거자 값을 지정합니다.
[in] UsagePage
사용량 값 배열의 사용 페이지를 지정합니다.
[in] LinkCollection
사용량 값 배열을 포함하는 링크 컬렉션을 지정합니다. LinkCollection이 0이 아닌 경우 루틴은 이 링크 컬렉션의 사용량 값 배열만 검색합니다. 그렇지 않으면 LinkCollection이 0이면 루틴은 PreparsedData와 연결된 최상위 컬렉션에서 사용량 값 배열을 검색합니다.
[in] Usage
사용량 값 배열의 사용을 지정합니다.
[in, out] UsageValue
루틴이 사용량 값 배열과 연결된 데이터를 반환하는 호출자가 할당한 버퍼에 대한 포인터입니다.
[in] UsageValueByteLength
UsageValue에서 버퍼의 길이(바이트)를 지정합니다.
[in] PreparsedData
최상위 컬렉션의 준비 데이터에 대한 포인터입니다.
[in] Report
값이 포함된 보고서에 대한 포인터입니다.
[in] ReportLength
보고서에 있는 보고서의 길이(바이트)를 지정합니다.
반환 값
HidP_GetUsageValueArray 다음 상태 값 중 하나를 반환합니다.
반환 코드 | 설명 |
---|---|
|
루틴이 값의 데이터를 성공적으로 반환했습니다. |
|
보고서 길이가 잘못되었습니다. |
|
지정한 보고서 형식이 잘못되었습니다. |
|
요청된 사용량은 사용량 값 배열이 아닙니다. |
|
UsageValue 버퍼가 너무 작아서 요청된 사용량을 보유할 수 없습니다. |
|
컬렉션에는 지정된 형식의 보고서에 지정된 사용량 페이지의 사용량 값 배열이 포함되어 있지만 지정된 보고서에는 이러한 사용량이 없습니다. |
|
준비한 데이터가 잘못되었습니다. |
|
컬렉션에는 지정된 보고서 유형의 보고서에서 지정된 사용량 페이지에 사용량 값 배열이 포함되어 있지 않습니다. |
설명
UsageValueByteLength의 필요한 크기(바이트)는 사용량 값 배열의 HIDP_VALUE_CAPS 구조의 BitSize 및 ReportCount 멤버를 곱하고 결과를 가장 가까운 바이트로 반올림하여 결정됩니다.
HidP_GetUsageValueArray 사용량 데이터의 최소 비트부터 시작하여 UsageValue 버퍼를 little-endian 순서로 설정합니다. 데이터는 바이트 정렬되지 않으며, 데이터의 가장 중요한 비트가 UsageValue 버퍼의 첫 번째 비트에 있도록 이동됩니다.
HidP_GetUsageValueArray 보고서 수가 1보다 큰 사용량에 대한 모든 사용량 값을 추출하도록 설계되었습니다. 보고서 수가 1과 같은 사용량을 추출하려면 HidP_GetUsageValue 사용합니다.
자세한 내용은 HID 컬렉션을 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 2000 이상 버전의 Windows에서 사용할 수 있습니다. |
대상 플랫폼 | 유니버설 |
헤더 | hidpi.h(Hidpi.h 포함) |
라이브러리 | Hidparse.lib |
IRQL | <= DISPATCH_LEVEL |