using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace MKVTest
{
    class MkvWriter
    {

        public bool WriteMkvMetaData(string commandString)
        {
            var process = new Process();
            var startInfo = new ProcessStartInfo
            {
                WindowStyle = ProcessWindowStyle.Normal,
                FileName = "cmd.exe",
                Arguments = commandString
            };
            if (!CheckFiles())
            {
                throw new FileNotFoundException("Required files, mkvpropedit.exe and mkvinfo.exe not found.");
            }
            process.StartInfo = startInfo;
            process.Start();
            while (!process.HasExited)
            {

            }
            if (process.ExitCode == 0) return true;
            var error = File.ReadAllLines("temp.txt");
            throw new ApplicationException(error.ToString());
        }

        public static bool CheckFiles()
        {
            return File.Exists("mkvpropedit.exe") && File.Exists("mkvinfo.exe");
        }
    }
}
