public void StopExternalProcessExecution(ScriptPart scriptPart) { StopWatch(); long elapsed = Elapsed > 1000 ? Elapsed / 1000 : Elapsed; string unit = Elapsed > 1000 ? "s" : "ms"; Done(Draw.Prefix, "External process " + "'{0}'".Pastel(Color.DarkGray) + " executed in {1} {2}", scriptPart.Program, elapsed, unit); NewLine(); }
public static string Perform(string[] lines) { ScriptPart scriptPart = new ScriptPart(lines); scriptPart.ScriptLines = new List <string>(ScriptOptimizer.Routine(scriptPart.ScriptLines.ToArray())); string outHtml = scriptPart.GetString(); outHtml = CommonUtils.ToHTMLNewLine(outHtml); return(outHtml); }
/// <summary> /// Initializes a new instance of the <see cref="IG"/> class. /// <summary> /// <param name="_Parent"></param> override public void Initialize(XL2SO _Parent) { m_Parent = _Parent; m_General = new General(); m_ScriptPart = new ScriptPart(); m_ExcelPart = new ExcelPart(); m_InstanceListPart = new InstanceListPart(); m_OutputPart = new OutputPart(); m_General.FoldoutStyle = new GUIStyle("FoldOut"); m_General.FoldoutStyle.fontStyle = FontStyle.Bold; }
/// <summary> /// Starts an external process. /// </summary> /// <param name="scriptPart">Script part which represents the external process to start.</param> /// <returns>Cli Return Code</returns> private int StartExternalProcess(ScriptPart scriptPart) { int result = 0; try { Process proc = new Process { StartInfo = new ProcessStartInfo { FileName = scriptPart.Program, Arguments = scriptPart.Arguments, UseShellExecute = false, RedirectStandardOutput = true, CreateNoWindow = true } }; proc.Start(); _logger.NewLine(); while (!proc.StandardOutput.EndOfStream) { string line = proc.StandardOutput.ReadLine(); _logger.PrintExternalScriptOutput(line); } _logger.NewLine(); } catch (Exception e) { _logger.ExternalScriptException(e); result = 1; } return(result); }
public void StartExternalProcessExecution(ScriptPart scriptPart) { Info("Executing external process: " + "'{0} {1}'".Pastel(Color.DarkGray), scriptPart.Program, scriptPart.Arguments); ResetAndStartWatch(); }