protected void evaluatScriptArguments(ESObjectSpace objectSpace, NamespaceObject environment) { var argList = new List <Object>(); foreach (var argSpec in scriptArguments) { try { Object value; FileInfo scriptPath; if (argSpec.SpecifiesPathname) { if (objectSpace.pathForScript(argSpec.Value, out scriptPath)) { if (objectSpace.evaluate(scriptPath, environment, null, null, out value)) { argList.Add(value); } else { errors.Add("Syntax error in script used as argument, pathname = " + argSpec.Value); } } else { errors.Add("Script path (used as argument to base script) not found: " + argSpec.Value); } } else if (objectSpace.evaluate(new StringReader(argSpec.Value), environment, null, null, out value)) { argList.Add(value); } else { errors.Add("Syntax error in argument: " + argSpec.Value); } } catch (Exception ex) { errors.Add("Error in argument evaluation: " + ex.ToString()); } } scriptArgs = argList.ToArray(); }