다음을 통해 공유


콜백 함수를 사용하여 드라이버 메시지 처리

사용자 고유의 콜백 함수를 작성하여 디바이스 드라이버에서 보낸 메시지를 처리할 수 있습니다. 콜백 함수를 사용하려면 fdwOpen 매개 변수의 CALLBACK_FUNCTION 플래그와 waveInOpen 또는 waveOutOpen 함수의 dwCallback 매개 변수에서 콜백의 주소를 지정합니다.

콜백 함수로 전송된 메시지는 UINTDWORD 매개 변수 대신 두 개의 DWORD 매개 변수가 있다는 점을 제외하고 창으로 전송된 메시지와 비슷합니다. 이러한 메시지에 대한 자세한 내용은 Waveform-Audio 파일 재생을 참조하세요.

애플리케이션에서 콜백 함수로 instance 데이터를 전달하려면 다음 기술 중 하나를 사용합니다.

  • 디바이스 드라이버를 여는 함수의 dwInstance 매개 변수를 사용하여 instance 데이터를 전달합니다.
  • 디바이스 드라이버로 전송되는 오디오 데이터 블록을 식별하는 WAVEHDR 구조체의 dwUser 멤버를 사용하여 instance 데이터를 전달합니다.

32비트 이상의 instance 데이터가 필요한 경우 추가 정보가 포함된 구조체에 포인터를 전달합니다.