internal void Dispose(bool disposing) { if (!disposed) { if (disposing) { //No managed resources to expose. } #region Dispose MediaWriter if (MediaWriterIsWriting) //We are currently writing { if (MediaWriter != null) { // Close the file try { MediaWriter.EndWriting(); } catch { } } MediaWriterIsWriting = false; } if (MediaProperties != null) { Marshal.ReleaseComObject(MediaProperties); MediaProperties = null; } if (MediaWriter != null) { Marshal.ReleaseComObject(MediaWriter); MediaWriter = null; } #endregion disposed = true; } }