private void startToConvertBtn_Click(object sender, EventArgs e) { var savePathFolder = saveConvertedFilePath.Text; if (savePathFolder.Length == 0) { MessageBox.Show("请选择视频转换后的保存路径;", "操作提示:", MessageBoxButtons.OK, MessageBoxIcon.Warning); saveConvertedFilePath.Focus(); return; } if (!Directory.Exists(savePathFolder)) { Directory.CreateDirectory(savePathFolder); } var srcFilePath = fileSrcPath.Text; if (srcFilePath.Length == 0) { MessageBox.Show("请将您要转换的文件拖拽到此处;", "操作提示:", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } var file = new FileInfo(srcFilePath); if (false == file.Exists) { MessageBox.Show("您要转换的文件不存在,请重新拖拽文件。", "操作提示:", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } var format = formatName.Text; Properties.Settings.Default.singleSavePath = savePathFolder; var tarFilePath = Path.Combine(savePathFolder, file.Name.Replace(file.Extension, format)); if (File.Exists(tarFilePath)) { var confirmBox = MessageBox.Show(tarFilePath + "文件已存在,是否需要覆盖?\n确认(OK)表示覆盖;\n取消(Cancel)表示不覆盖;", "文件存在提醒", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning); if (confirmBox == DialogResult.Cancel) { tarFilePath = Path.Combine(savePathFolder, file.Name.Replace(file.Extension, "_") + Guid.NewGuid().ToString().Replace("-", "") + format); } else { try { File.Delete(tarFilePath); } catch (FieldAccessException faEx) { MessageBox.Show("转换异常:" + Environment.NewLine + faEx.Message + Environment.NewLine + faEx.StackTrace, "转换错误", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } } } RunTaskHandler handler = new RunTaskHandler(this.SingleRun); this.Invoke(handler, new object[] { srcFilePath, tarFilePath }); }
private void multiConvertBtn_Click(object sender, EventArgs e) { if (multiFileSrcPathTxb.Text.Length == 0) { MessageBox.Show("请选择您要转换的文件夹;", "操作提示:", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } if (multiFileTarPathTxb.Text.Length == 0) { MessageBox.Show("请选择转换后视频保存的位置;", "操作提示:", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } if (!Directory.Exists(multiFileTarPathTxb.Text)) { Directory.CreateDirectory(multiFileTarPathTxb.Text); } convertResult.Text = ""; RunTaskHandler handler = new RunTaskHandler(this.MultiRun); this.Invoke(handler, new object[] { multiFileSrcPathTxb.Text, multiFileTarPathTxb.Text }); }