MODM_DATA - NtDoc

Native API online documentation, based on the System Informer (formerly Process Hacker) phnt headers
// mmddk.h

DWORD modMessage(
   UINT      uDeviceID,
   UINT      uMSG,
   DWORD_PTR dwUser,
   DWORD_PTR dwParam1,
   DWORD_PTR dwParam2
);
View the official Windows hardware development documentation

NtDoc

No description available.

Windows hardware development documentation (modm-data)

MODM_DATA function

MMSYSTEM sends the MODM_DATA message to the modMessage function of a MIDI output driver when the client wants to make a single MIDI event available as output.

Parameters

Return value

If the operation is successful, modMessage returns MMSYSERR_NOERROR. Otherwise, it returns one of the error messages in the following table.

Return code Description
MMSYSERR_NOTENABLED The driver failed to load or initialize.
MIDIERR_NOTREADY The MIDI hardware is busy processing other data.

Remarks

This message is used to make all MIDI events available as output, except system-exclusive events. System-exclusive events are communicated with the MODM_LONGDATA message. MIDI events that are communicated with MODM_DATA can be one, two, or three bytes long. The driver must parse the event to determine how many bytes to transfer. Unused bytes are not guaranteed to be zero.

The driver developer can develop a driver to not return until the message has been sent to the output device. Alternatively, the driver can return immediately and the MIDI data can be output in the background.

Requirements

Target platform Desktop
Version Available in Windows XP and later Windows operating systems.
Header Mmddk.h (include Mmddk.h, Mmsystem.h, or Windows.h)

See also

modMessage

MODM_LONGDATA