IOCTL_HID_SET_POLL_FREQUENCY_MSEC IOCTL(hidclass.h)
IOCTL_HID_SET_POLL_FREQUENCY_MSEC 요청은 최상위 컬렉션에 대한 폴링 빈도(밀리초)를 설정합니다.
폴링된 디바이스에서 불규칙하고 기회적인 읽기를 수행하는 사용자 모드 애플리케이션 또는 커널 모드 드라이버는 폴링 간격이 0이어야 합니다. 이러한 경우 IOCTL_HID_SET_POLL_FREQUENCY_MSEC 실제로 디바이스의 폴링 빈도를 변경하지 않습니다. 그러나 보고서 데이터를 읽을 때 부실하지 않으면 표시된 컬렉션에 대한 최신 보고서 데이터로 즉시 읽기가 완료됩니다. 보고서 데이터가 부실하면 폴링 간격의 만료를 기다리지 않고 즉시 새로 고쳐지고 새 데이터로 읽기가 완료됩니다.
IRP에 제공된 폴링 간격의 값이 0이 아니면 = MIN_POLL_INTERVAL_MSEC 및 <= MAX_POLL_INTERVAL_MSEC.>
여러 최상위 컬렉션이 있는 경우 폴링이 제한될 수 있습니다.
HIDClass 디바이스에 대한 일반적인 내용은 HID 컬렉션을 참조하세요.
주 코드
입력 버퍼
IRP의 I/O 스택 위치에 있는 Parameters.DeviceIoControl.InputBufferLength는 입력 버퍼의 크기(바이트)를 나타내며, 이는 = sizeof(ULONG)여야 >합니다.
Irp->AssociatedIrp.SystemBuffer 에는 새 폴링 간격이 포함됩니다.
입력 버퍼 길이
sizeof(ULONG)보다 크거나 같은 값입니다.
출력 버퍼
없음
출력 버퍼 길이
없음
상태 블록
HID 클래스 드라이버는 Irp-IoStatus>의 Status 멤버를 오류 없이 전송이 완료된 경우 STATUS_SUCCESS 설정합니다. 그렇지 않으면 적절한 NTSTATUS 오류 코드로 설정됩니다.
요구 사항
요구 사항 | 값 |
---|---|
헤더 | hidclass.h(Hidclass.h 포함) |