示例#1
0
        /// <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));
        }
示例#2
0
 private static extern MMRESULT midiOutOpen(out HMIDIOUT lphmo, UIntPtr uDeviceId,
                                            MidiOutProc dwCallback, UIntPtr dwCallbackInstance, MidiOpenFlags dwFlags);
示例#3
0
 public static extern MMRESULT midiOutUnprepareHeader(HMIDIOUT hmo, IntPtr lpMidiOutHdr, uint cbMidiOutHdr);
示例#4
0
 public static extern MMRESULT midiOutLongMsg(HMIDIOUT hmo, IntPtr lpMidiOutHdr, uint cbMidiOutHdr);
示例#5
0
 public static extern MMRESULT midiOutShortMsg(HMIDIOUT hmo, uint dwMsg);
示例#6
0
 public static extern MMRESULT midiOutClose(HMIDIOUT hmo);
示例#7
0
 public static extern MMRESULT midiOutReset(HMIDIOUT hmo);