protected override bool ReleaseHandle() { if (!this.IsClosed) { MMSYSERROR ret = winmm.waveInClose(this); return ret == MMSYSERROR.MMSYSERR_NOERROR; } else { return true; } } }