midiOutPrepareHeader
The midiOutPrepareHeader function prepares a MIDI system-exclusive or stream buffer for output.
MMRESULT midiOutPrepareHeader(
HMIDIOUT hmo,
LPMIDIHDR lpMidiOutHdr,
UINT cbMidiOutHdr
);
Parameters
hmo
Handle to the MIDI output device. This parameter can also be the handle of a MIDI stream cast to HMIDIOUT.
lpMidiOutHdr
Pointer to a MIDIHDR structure that identifies the buffer to be prepared.
cbMidiOutHdr
Size, in bytes, of the MIDIHDR structure.
Return Values
Returns MMSYSERR_NOERROR if successful or an error otherwise. Possible error values include the following.
Value | Description |
MMSYSERR_INVALHANDLE | The specified device handle is invalid. |
MMSYSERR_INVALPARAM | The specified address is invalid or the given stream buffer is greater than 64K. |
MMSYSERR_NOMEM | The system is unable to allocate or lock memory. |
Remarks
A stream buffer cannot be larger than 64K.
Preparing a header that has already been prepared has no effect, and the function returns MMSYSERR_NOERROR.
After the header has been prepared, do not modify the buffer. To free the buffer, use the midiOutUnprepareHeader function.
Before using this function, you must set the lpData, dwBufferLength, and dwFlags members of the MIDIHDR structure. The dwFlags member must be set to zero.
Requirements
** Windows NT/2000/XP:** Included in Windows NT 3.1 and later.
** Windows 95/98/Me:** Included in Windows 95 and later.
** Header:** Declared in Mmsystem.h; include Windows.h.
** Library:** Use Winmm.lib.
See Also
Musical Instrument Digital Interface (MIDI), MIDI Functions, MIDIHDR, midiOutUnprepareHeader