public static extern MMRESULT midiInUnprepareHeader(HMIDIIN hMidiIn, IntPtr headerPtr, uint cbMidiInHdr);
private static extern MMRESULT midiInOpen(out HMIDIIN lphMidiIn, UIntPtr uDeviceId, MidiInProc dwCallback, UIntPtr dwCallbackInstance, MidiOpenFlags dwFlags);
public static extern MMRESULT midiInAddBuffer(HMIDIIN hMidiIn, IntPtr lpMidiInHdr, uint cbMidiInHdr);
public static extern MMRESULT midiInClose(HMIDIIN hMidiIn);
public static extern MMRESULT midiInReset(HMIDIIN hMidiIn);
public static extern MMRESULT midiInStop(HMIDIIN hMidiIn);
/// <summary> /// Opens a MIDI input 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/ms711610(VS.85).aspx public static MMRESULT midiInOpen(out HMIDIIN lphMidiIn, UIntPtr uDeviceId, MidiInProc dwCallback, UIntPtr dwCallbackInstance) { return(midiInOpen(out lphMidiIn, uDeviceId, dwCallback, dwCallbackInstance, dwCallback == null ? MidiOpenFlags.CALLBACK_NULL : MidiOpenFlags.CALLBACK_FUNCTION)); }