private void ButtonStart_Click(object sender, RoutedEventArgs e) { LockOptionControls(true); var inputFile = TextBoxInputFile.Text; var outputFile = TextBoxOutputFile.Text; // Check whether the output file already exists if (File.Exists(outputFile)) { if (Messages.ShowWarning(this, Messages.Warnings.OutputFileAlreadyExists) == MessageBoxResult.No) { ButtonStart.Visibility = Visibility.Visible; GridProgress.Visibility = Visibility.Hidden; return; } } // Dispose the previous LAME process if necessary if (_lameProc != null) { _lameProc.Dispose(); } try { _lameProc = new LameProcess(inputFile, outputFile, Helper.GetEncodingParams(this)); _lameProc.ProgressChanged += LameProc_ProgressChanged; _lameProc.InputFileRemovalFailed += LameProc_InputFileRemovalFailed; _lameProc.Disposed += LameProc_Disposed; _lameProc.Start(); } catch (Exception ex) { Messages.ShowError(this, ex.Message); } }
private void LameProc_Disposed(object sender, EventArgs e) { _lameProc = null; }
private void ButtonStart_Click(object sender, RoutedEventArgs e) { LockOptionControls(true); var inputFile = TextBoxInputFile.Text; var outputFile = TextBoxOutputFile.Text; // Check whether the output file already exists if (File.Exists(outputFile)) { if (Messages.ShowWarning(this, Messages.Warnings.OutputFileAlreadyExists) == MessageBoxResult.No) { ButtonStart.Visibility = Visibility.Visible; GridProgress.Visibility = Visibility.Hidden; return; } } // Dispose the previous LAME process if necessary if (_lameProc != null) _lameProc.Dispose(); try { _lameProc = new LameProcess(inputFile, outputFile, Helper.GetEncodingParams(this)); _lameProc.ProgressChanged += LameProc_ProgressChanged; _lameProc.InputFileRemovalFailed += LameProc_InputFileRemovalFailed; _lameProc.Disposed += LameProc_Disposed; _lameProc.Start(); } catch (Exception ex) { Messages.ShowError(this, ex.Message); } }