Função midiOutPrepareHeader (mmeapi.h)
A função midiOutPrepareHeader prepara um buffer de fluxo ou exclusivo do sistema MIDI para saída.
Sintaxe
MMRESULT midiOutPrepareHeader(
HMIDIOUT hmo,
LPMIDIHDR pmh,
UINT cbmh
);
Parâmetros
hmo
Manipule para o dispositivo de saída MIDI. Para obter o identificador do dispositivo, chame midiOutOpen. Esse parâmetro também pode ser o identificador de um fluxo MIDI convertido em um tipo HMIDIOUT .
pmh
Ponteiro para uma estrutura MIDIHDR que identifica o buffer a ser preparado.
Antes de chamar a função, defina os membros lpData, dwBufferLength e dwFlags da estrutura MIDIHDR . O membro dwFlags deve ser definido como zero.
cbmh
Tamanho, em bytes, da estrutura MIDIHDR .
Retornar valor
Retorna MMSYSERR_NOERROR se tiver êxito ou um erro de outra forma. Os valores de erro possíveis incluem o seguinte.
Código de retorno | Descrição |
---|---|
|
O identificador de dispositivo especificado é inválido. |
|
O endereço especificado é inválido ou o buffer de fluxo fornecido é maior que 64K. |
|
O sistema não pode alocar ou bloquear memória. |
Comentários
Antes de passar um bloco de dados MIDI para um driver de dispositivo, você deve preparar o buffer passando-o para a função midiOutPrepareHeader . Depois que o cabeçalho tiver sido preparado, não modifique o buffer. Depois que o driver terminar de usar o buffer, chame a função midiOutUnprepareHeader .
O aplicativo pode reutilizar o mesmo buffer ou alocar vários buffers e chamar midiOutPrepareHeader para cada buffer. Se você usar novamente o mesmo buffer, não será necessário preparar o buffer sempre. Você pode chamar midiOutPrepareHeader uma vez no início e, em seguida, chamar midiOutUnprepareHeader uma vez no final.
Um buffer de fluxo não pode ser maior que 64K.
Preparar um cabeçalho que já foi preparado não tem efeito e a função retorna MMSYSERR_NOERROR.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | mmeapi.h (inclua Windows.h) |
Biblioteca | Winmm.lib |
DLL | Winmm.dll |