Función midiOutPrepareHeader (mmeapi.h)
La función midiOutPrepareHeader prepara un búfer de secuencia o exclusivo del sistema MIDI para la salida.
Sintaxis
MMRESULT midiOutPrepareHeader(
HMIDIOUT hmo,
LPMIDIHDR pmh,
UINT cbmh
);
Parámetros
hmo
Controla el dispositivo de salida MIDI. Para obtener el identificador del dispositivo, llame a midiOutOpen. Este parámetro también puede ser el identificador de una secuencia MIDI que se convierte en un tipo HMIDIOUT .
pmh
Puntero a una estructura MIDIHDR que identifica el búfer que se va a preparar.
Antes de llamar a la función, establezca los miembros lpData, dwBufferLength y dwFlags de la estructura MIDIHDR . El miembro dwFlags debe establecerse en cero.
cbmh
Tamaño, en bytes, de la estructura MIDIHDR .
Valor devuelto
Devuelve MMSYSERR_NOERROR si se realiza correctamente o si se produce un error en caso contrario. Entre los valores de error posibles se incluyen los siguientes.
Código devuelto | Descripción |
---|---|
|
El identificador de dispositivo especificado no es válido. |
|
La dirección especificada no es válida o el búfer de secuencia especificado es mayor que 64K. |
|
El sistema no puede asignar o bloquear la memoria. |
Comentarios
Antes de pasar un bloque de datos MIDI a un controlador de dispositivo, debe preparar el búfer pasandolo a la función midiOutPrepareHeader . Una vez preparado el encabezado, no modifique el búfer. Una vez que el controlador haya terminado con el búfer, llame a la función midiOutUnprepareHeader .
La aplicación puede volver a usar el mismo búfer, o asignar varios búferes y llamar a midiOutPrepareHeader para cada búfer. Si vuelve a usar el mismo búfer, no es necesario preparar el búfer cada vez. Puedes llamar a midiOutPrepareHeader una vez al principio y, a continuación, llamar a midiOutUnprepareHeader una vez al final.
Un búfer de secuencia no puede ser mayor que 64K.
La preparación de un encabezado que ya se ha preparado no tiene ningún efecto y la función devuelve MMSYSERR_NOERROR.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 2000 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | mmeapi.h (incluya Windows.h) |
Library | Winmm.lib |
Archivo DLL | Winmm.dll |