EVT_VHF_ASYNC_OPERATION 콜백 함수(vhf.h)
HID 원본 드라이버는 HID 보고서를 가져와서 설정하는 4가지 비동기 작업 중 하나를 지원하려는 경우 이 이벤트 콜백을 구현합니다.
구문
EVT_VHF_ASYNC_OPERATION EvtVhfAsyncOperation;
void EvtVhfAsyncOperation(
[in] PVOID VhfClientContext,
[in] VHFOPERATIONHANDLE VhfOperationHandle,
[in, optional] PVOID VhfOperationContext,
[in] PHID_XFER_PACKET HidTransferPacket
)
{...}
매개 변수
[in] VhfClientContext
드라이버가 가상 HID 디바이스를 만들기 위해 VhfCreate에 제공된 VHF_CONFIG 구조체에 전달한 HID 원본 드라이버 정의 버퍼에 대한 불투명 포인터입니다.
[in] VhfOperationHandle
이 비동기 작업을 고유하게 식별하는 불투명 핸들입니다.
[in, optional] VhfOperationContext
작업을 서비스하기 위해 HID 원본 드라이버에서 사용할 수 있는 버퍼에 대한 포인터입니다. 버퍼의 크기는 VhfCreate에 제공된 VHF_CONFIG 구조의 HID 원본 드라이버에 의해 지정됩니다.
[in] HidTransferPacket
HID_XFER_PACKET 구조체에 대한 포인터입니다. HID 보고서에 대한 정보를 포함하며, I/O 요청에 대한 HID 소스 드라이버 및 HID 클래스/미니 드라이버 쌍에서 보고서를 얻거나 설정하는 데 사용됩니다.
반환 값
없음
설명
HID 원본 드라이버에서 지원할 수 있는 비동기 작업의 유형은 GetFeature, SetFeature, WriteReport, GetInputReport입니다.
VHF가 HID 보고서를 설정하거나 쿼리하는 요청을 받으면 VHF는 이전에 등록된 EvtVhfAsyncOperation 콜백 함수를 호출하고 비동기 작업이 시작됩니다. 각 작업은 VHF에서 설정한 VHFOPERATIONHANDLE 핸들로 식별됩니다. 드라이버가 초기화하는 동안 VHF_CONFIGOperationContextSize 멤버에 0이 아닌 값을 지정한 경우 VHF는 해당 크기의 버퍼를 할당하고 EvtVhfAsyncOperation을 호출할 때 VhfOperationContext 매개 변수의 해당 버퍼에 포인터를 전달합니다.
HidTransferPacket 은 HID 보고서별 세부 정보를 포함하는 VHF 할당 구조를 가리키는 이 작업의 전송 버퍼입니다. 예를 들어 작업이 GetFeature인 경우 완료 시 버퍼는 HID 원본 드라이버에 의해 요청된 HID 기능 보고서로 채워집니다.
작업이 완료되면 HID 소스는 VhfAsyncOperationComplete를 호출하여 완료 상태 보고합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 10 |
지원되는 최소 서버 | 지원되는 버전 없음 |
대상 플랫폼 | 데스크톱 |
머리글 | vhf.h |
IRQL | <=DISPATCH_LEVEL |
추가 정보
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기