Compartilhar via


Usando uma função de retorno de chamada para processar mensagens de driver

Você pode escrever sua própria função de retorno de chamada para processar mensagens enviadas pelo driver de dispositivo. Para usar uma função de retorno de chamada, especifique o sinalizador CALLBACK_FUNCTION no parâmetro fdwOpen e o endereço do retorno de chamada no parâmetro dwCallback da função waveInOpen ou waveOutOpen .

As mensagens enviadas para uma função de retorno de chamada são semelhantes às mensagens enviadas a uma janela, exceto que elas têm dois parâmetros DWORD em vez de um UINT e um parâmetro DWORD . Para obter detalhes sobre essas mensagens, consulte Reproduzindo arquivos Waveform-Audio.

Para passar dados de instância de um aplicativo para uma função de retorno de chamada, use uma das seguintes técnicas:

  • Passe os dados da instância usando o parâmetro dwInstance da função que abre o driver do dispositivo.
  • Passe os dados da instância usando o membro dwUser da estrutura WAVEHDR que identifica um bloco de dados de áudio que está sendo enviado para um driver de dispositivo.

Se você precisar de mais de 32 bits de dados de instância, passe um ponteiro para uma estrutura que contém as informações adicionais.