Ejemplo n.º 1
0
        public static void Main(string[] args)
        {
            Logger.Instance = ConsoleLogger.Instance;

            if (args.Length == 0)
            {
                Console.WriteLine("No arguments");
                Console.ReadKey();
                return;
            }

            foreach (string arg in args)
            {
                if (MultiFileStream.Exists(arg))
                {
                    continue;
                }
                if (DirectoryUtils.Exists(arg))
                {
                    continue;
                }
                Console.WriteLine(MultiFileStream.IsMultiFile(arg) ?
                                  $"File '{arg}' doesn't has all parts for combining" :
                                  $"Neither file nor directory with path '{arg}' exists");
                Console.ReadKey();
                return;
            }

            Program program = new Program();

            program.Load(args);
            Console.ReadKey();
        }
        // =====================================================
        // Methods
        // =====================================================

        private bool ProcessInputFiles(string[] files)
        {
            if (files.Length == 0)
            {
                return(false);
            }

            foreach (string file in files)
            {
                if (MultiFileStream.Exists(file))
                {
                    continue;
                }
                if (DirectoryUtils.Exists(file))
                {
                    continue;
                }
                Logger.Log(LogType.Warning, LogCategory.General, MultiFileStream.IsMultiFile(file) ?
                           $"File '{file}' doesn't have all parts for combining" :
                           $"Neither file nor directory with path '{file}' exists");
                return(false);
            }

            IntroText.Text    += "Loading files...";
            MainGrid.AllowDrop = false;
            m_processingFiles  = files;

            ThreadPool.QueueUserWorkItem(new WaitCallback(LoadFiles), files);
            return(true);
        }