Esempio n. 1
0
        private void MIDIInList_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (handle != IntPtr.Zero)
            {
                WinMM.midiInStop(handle);
                WinMM.midiInClose(handle);
            }

            midiInProc = new WinMM.MidiInProc(MidiProc);
            int retval = WinMM.midiInOpen(out handle, MIDIInList.SelectedIndex, midiInProc, IntPtr.Zero, WinMM.CALLBACK_FUNCTION);

            WinMM.midiInStart(handle);
        }
Esempio n. 2
0
 public void Open(MidiInHandler callback)
 {
     proc = new WinMM.MidiInProc((int h, uint msg, uint instance, uint param1, uint param2) => callback(this, new MidiMessage(param1, param2)));
     WinMM.midiInOpen(ref handle, Id, proc, 0, WinMM.CALLBACK_FUNCTION);
     opened = true;
 }