HidP_SetButtonArray 함수(hidpi.h)
HidP_SetButtonArray 함수는 HIDP_BUTTON_ARRAY_DATA 구조의 배열을 통해 단추의 상태를 설정합니다.
구문
NTSTATUS HidP_SetButtonArray(
HIDP_REPORT_TYPE ReportType,
USAGE UsagePage,
USHORT LinkCollection,
USAGE Usage,
PHIDP_BUTTON_ARRAY_DATA ButtonData,
USHORT ButtonDataLength,
PHIDP_PREPARSED_DATA PreparsedData,
PCHAR Report,
ULONG ReportLength
);
매개 변수
ReportType
HIDP_REPORT_TYPE 열거형에서 HidP_Output 또는 HidP_Feature 값 입니다.
UsagePage
지정된 사용량이 참조하는 사용 페이지입니다.
LinkCollection
(선택 사항) 이 값은 UsagePage와 Usage 가 동일하지만 컬렉션이 다른 두 필드를 구분하는 데 사용할 수 있습니다. 값이 HIDP_LINK_COLLECTION_UNSPECIFIED 경우 위치에 관계없이 UsagePage 및 Usage 와 일치하는 첫 번째 단추 배열이 반환됩니다. 값이 HIDP_LINK_COLLECTION_ROOT 경우 루트 컬렉션에서 첫 번째 찾은 단추 배열이 UsagePage 및 Usage 와 일치하는 반환됩니다.
Usage
단추 배열 HidP_SetButtonArray 설정되는 사용량입니다.
ButtonData
단추 배열로 설정할 값이 있는 버퍼입니다.
ButtonDataLength
ButtonData 버퍼의 요소 수입니다.
PreparsedData
HIDCLASS에서 반환된 구문 분석된 데이터입니다.
Report
보고서 패킷입니다. 첫 번째 바이트는 ReportId여야 합니다.
ReportLength
지정된 보고서 패킷의 길이(바이트)입니다.
반환 값
HidP_SetButtonArray 다음 상태 값 중 하나를 반환합니다.
반환 코드 | 설명 |
---|---|
HIDP_STATUS_SUCCESS | 보고서 패킷의 단추 배열이 성공적으로 설정되었습니다. |
HIDP_STATUS_INVALID_REPORT_TYPE | ReportType 이 잘못되었습니다. |
HIDP_STATUS_INVALID_PREPARSED_DATA | PreparsedData 가 잘못되었습니다. |
HIDP_STATUS_INVALID_REPORT_LENGTH | 보고서 패킷의 길이가 지정된 ReportType의 HIDP_CAPS 구조에 지정된 길이와 같지 않습니다. |
HIDP_STATUS_REPORT_DOES_NOT_EXIST | 이 디바이스에는 지정된 ReportType에 대한 보고서가 없습니다. |
HIDP_STATUS_NOT_BUTTON_ARRAY | 지정된 컨트롤이 단추 배열이 아닙니다. |
HIDP_STATUS_INCOMPATIBLE_REPORT_ID | 지정된 사용량 페이지, 사용량 및 링크 컬렉션이 전달되는 보고서와 다른 보고서 ID가 있는 보고서에 있습니다. |
HIDP_STATUS_USAGE_NOT_FOUND | 이 ReportType에 대한 보고서에 사용량 페이지, 사용량 및 링크 컬렉션 조합이 없습니다. |
HIDP_STATUS_DATA_INDEX_OUT_OF_RANGE | 제공된 HIDP_BUTTON_ARRAY_DATA 구조체 중 하나에 대한 ArrayIndex가 이 단추 배열의 유효한 범위를 벗어났습니다. |
설명
HidP_SetButtonArray 지정된 LinkCollection 내에서 찾은 첫 번째 단추 배열의 단추 상태를 지정된 보고서에 대해 제공된 사용량으로 설정합니다.
호출자는 HidP_GetVersion 사용하여 이 함수를 사용할 수 있는지 확인해야 합니다. HidP_SetButtonArrayHidP_GetVersion 두 개 이상의 값을 반환하는 경우에만 사용할 수 있습니다. API 버전 2는 Windows 11 해당합니다.
단추 배열은 지정된 기본 항목에 대해 선언된 ReportCount보다 정의된 사용량이 적기 때문에 기본 항목을 설명하는 사용 시퀀스의 마지막 사용이 반복되어야 할 때 발생합니다. 이 경우 해당 사용량에 대해 단일 HIDP_BUTTON_CAPS 할당되고 HIDP_BUTTON_CAPSReportCount는 사용량이 참조하는 필드 수를 반영하도록 설정됩니다.
단추 배열을 설명하는 HIDP_BUTTON_CAPS항상 ReportCount 가 1보다 큽니다. ReportCount가 1과 같으면 단추 배열이 아니고 HidP_SetButtonArray 사용할 수 없습니다. 자세한 내용은 HidP_SetUsages 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
헤더 | hidpi.h |