midiInAddBuffer function

The midiInAddBuffer function sends an input buffer to a specified opened MIDI input device. This function is used for system-exclusive messages.

Syntax

MMRESULT midiInAddBuffer(
   HMIDIIN   hMidiIn,
   LPMIDIHDR lpMidiInHdr,
   UINT      cbMidiInHdr
);

Parameters

  • hMidiIn
    Handle to the MIDI input device.

  • lpMidiInHdr
    Pointer to a MIDIHDR structure that identifies the buffer.

  • cbMidiInHdr
    Size, in bytes, of the MIDIHDR structure.

Return value

Returns MMSYSERR_NOERROR if successful or an error otherwise. Possible error values include the following.

Return code Description
MIDIERR_STILLPLAYING

The buffer pointed to by lpMidiInHdr is still in the queue.

MIDIERR_UNPREPARED

The buffer pointed to by lpMidiInHdr has not been prepared.

MMSYSERR_INVALHANDLE

The specified device handle is invalid.

MMSYSERR_INVALPARAM

The specified pointer or structure is invalid.

MMSYSERR_NOMEM

The system is unable to allocate or lock memory.

 

Remarks

When the buffer is filled, it is sent back to the application.

The buffer must be prepared by using the midiInPrepareHeader function before it is passed to the midiInAddBuffer function.

Requirements

Minimum supported client

Windows 2000 Professional [desktop apps only]

Minimum supported server

Windows 2000 Server [desktop apps only]

Header

Mmsystem.h (include Windows.h)

Library

Winmm.lib

DLL

Winmm.dll

See also

MIDI Functions