public void Close() { WaveInRecorder.ThrowOnError(WaveNative.waveInUnprepareHeader(m_WaveIn, ref m_Header, Marshal.SizeOf(m_Header))); m_HeaderHandle.Free(); m_Header.lpData = IntPtr.Zero; m_HeaderDataHandle.Free(); }
public void Dispose() { if (m_Header.lpData != IntPtr.Zero) { WaveNative.waveInUnprepareHeader(m_WaveIn, ref m_Header, Marshal.SizeOf(m_Header)); m_HeaderHandle.Free(); m_Header.lpData = IntPtr.Zero; } m_RecordEvent.Close(); if (m_HeaderDataHandle.IsAllocated) { m_HeaderDataHandle.Free(); } GC.SuppressFinalize(this); }