/// <summary> /// Opens a MIDI output device. /// </summary> /// NOTE: This is adapted from the original Win32 function in order to make it typesafe. /// /// Win32 docs: http://msdn.microsoft.com/en-us/library/ms711632(VS.85).aspx public static MMRESULT midiOutOpen(out HMIDIOUT lphmo, UIntPtr uDeviceId, MidiOutProc dwCallback, UIntPtr dwCallbackInstance) { //return midiOutOpen(out lphmo, uDeviceID, dwCallback, dwCallbackInstance, // dwCallback == null ? MidiOpenFlags.CALLBACK_NULL : MidiOpenFlags.CALLBACK_FUNCTION); return(midiOutOpen(out lphmo, uDeviceId, dwCallback, dwCallbackInstance, dwCallback == null ? MidiOpenFlags.CALLBACK_NULL : MidiOpenFlags.CALLBACK_FUNCTION& MidiOpenFlags.MIDI_IO_STATUS)); }
private static extern MMRESULT midiOutOpen(out HMIDIOUT lphmo, UIntPtr uDeviceId, MidiOutProc dwCallback, UIntPtr dwCallbackInstance, MidiOpenFlags dwFlags);
public static extern MMRESULT midiOutUnprepareHeader(HMIDIOUT hmo, IntPtr lpMidiOutHdr, uint cbMidiOutHdr);
public static extern MMRESULT midiOutLongMsg(HMIDIOUT hmo, IntPtr lpMidiOutHdr, uint cbMidiOutHdr);
public static extern MMRESULT midiOutShortMsg(HMIDIOUT hmo, uint dwMsg);
public static extern MMRESULT midiOutClose(HMIDIOUT hmo);
public static extern MMRESULT midiOutReset(HMIDIOUT hmo);