使用回调函数处理驱动程序消息

可以编写自己的回调函数来处理设备驱动程序发送的消息。 若要使用回调函数,请在 fdwOpen 参数中指定CALLBACK_FUNCTION标志,并在 waveInOpenwaveOutOpen 函数的 dwCallback 参数中指定回调的地址。

发送到回调函数的消息类似于发送到窗口的消息,只是它们具有两个 DWORD 参数,而不是 UINTDWORD 参数。 有关这些消息的详细信息,请参阅 播放Waveform-Audio文件

若要将实例数据从应用程序传递到回调函数,请使用以下方法之一:

  • 使用打开设备驱动程序的函数的 dwInstance 参数传递实例数据。
  • 使用 WAVEHDR 结构的 dwUser 成员传递实例数据,该结构标识要发送到设备驱动程序的音频数据块。

如果需要超过 32 位的实例数据,请将指针传递给包含附加信息的结构。