midiOutUnprepareHeader

Syntax

WORD midiOutUnprepareHeader(hMidiOut, lpMidiOutHdr, wSize)

This function cleans up the preparation performed by midiOutPrepareHeader. The midiOutUnprepareHeader function must be called after the device driver fills a data buffer and returns it to the application. You must call this function before freeing the data buffer.

Parameters

HMIDIOUT hMidiOut

Specifies a handle to the MIDI output device.

LPMIDIHDR lpMidiOutHdr

Specifies a pointer to a MIDIHDR structure identifying the buffer to be cleaned up.

WORD wSize

Specifies the size of the MIDIHDR structure.

Return Value

Returns zero if the function was successful. Otherwise, it returns an error number. Possible error returns are:

MMSYSERR_INVALHANDLE

Specified device handle is invalid.

MIDIERR_STILLPLAYING

lpMidiOutHdr is still in the queue.

Comments

This function is the complementary function to midiOutPrepareHeader. You must call this function before freeing the data buffer with GlobalFree. After passing a buffer to the device driver with midiOutLongMsg, you must wait until the driver is finished with the buffer before calling midiOutUnprepareHeader.

Unpreparing a buffer that has not been prepared has no effect, and the function returns zero.

See Also

midiOutPrepareHeader