/// <param name="disposing">True if called from Dispose</param>
protectedvirtualvoidDispose(booldisposing)
{
if(!this.disposed)
{
disposeIsRunning=true;
//if(disposing) Components.Dispose();
if(SysexBufferHeaders.Length>0)
{
//// When SysexMessageReceived contains event handlers (!=null) , the 'midiInReset' call generate a infinit loop of CallBack call with LONGDATA message having a zero length.
//SysexMessageReceived = null; // removin all event handler to avoir the infinit loop.
// Reset in order to release any Sysex buffers
// We can't Unprepare and free them until they are flushed out. Neither can we close the handle.