Example #1
0
        public void ExecutaBuild(ComandoExecutar comando)
        {
            var processInfo = new ProcessStartInfo("cmd.exe", "/c " + comando.Comando);

            processInfo.CreateNoWindow         = true;
            processInfo.UseShellExecute        = false;
            processInfo.RedirectStandardError  = true;
            processInfo.RedirectStandardOutput = true;
            processInfo.WorkingDirectory       = comando.Diretorio;

            var process = Process.Start(processInfo);

            //process.WaitForExit();

            process.PriorityClass = ProcessPriorityClass.RealTime;

            var output = string.Empty;
            var erro   = string.Empty;

            while (!process.StandardOutput.EndOfStream)
            {
                output += process.StandardOutput.ReadLine() + "\n";
                //ListaErrosPendentes.Add(linha);
                // do something with line
            }

            //String output = process.StandardOutput.ReadToEnd();
            //String erro = process.StandardError.ReadToEnd();

            Console.WriteLine("output>>" + output);
            Console.WriteLine("error>>" + erro);

            Icon icone = AutoBuild.Properties.Resources.success;

            if (!erro.Equals("") || output.IndexOf("ERR") > 0)
            {
                icone = SystemIcons.Error;
                ListaErrosPendentes.Add(erro + output);
            }
            else if (output.IndexOf("WRN") > 0)
            {
                icone = SystemIcons.Exclamation;
                ListaErrosPendentes.Add(erro + output);
            }

            if (!erro.Equals("") || !output.Equals(""))
            {
                ShowNotification("Resultado build " + comando.Nome, erro + output, icone);
            }

            Console.WriteLine("ExitCode: {0}", process.ExitCode);
            process.Close();
        }
Example #2
0
 private void addFilaBuild(ComandoExecutar comandoExecutar)
 {
     try
     {
         if (FindBuildByPath(comandoExecutar.Diretorio) == null)
         {
             buildsPendentes.Add(comandoExecutar);
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show("Erro addFilaBuild " + ex.Message + " - " + ex.InnerException);
     }
 }