//public ascx_ScriptsFolder scriptsFolder; /* public void addCurrentAppDomainsDllsAsReferences() { foreach(var assembly in AppDomain.CurrentDomain.GetAssemblies()) { var assemblyName = Path.GetFileName(assembly.Location); if (false == lsExtraReferenceAssembliesToAdd.Contains(assemblyName)) if (assemblyName.IndexOf("JetBrains")==-1 && assemblyName.IndexOf("VisualStudio") == -1 && assemblyName.IndexOf("SMDiagnostics") == -1) // don't add these assemblies lsExtraReferenceAssembliesToAdd.Add(assemblyName); } }*/ public void compileSourceCode() { if (sourceCodeEditor.partialFileViewMode == false) if (this.okThread(delegate { compileSourceCode(); })) { var lsExtraReferencesToAdd = new List<string>(); //lsExtraReferenceAssembliesToAdd.ToArray()); String sErrorMessages = ""; var compileEngine = new CompileEngine(); Assembly aCompiledAssembly = null; if (tbExtraReferencesToAdd.Text != "") lsExtraReferencesToAdd.AddRange(tbExtraReferencesToAdd.Text.Split(new[] {Environment.NewLine}, StringSplitOptions. RemoveEmptyEntries)); lbSourceCode_CompilationResult.Items.Clear(); var exeMainClass = (rbCreateExe.Checked) ? tbMainClass.Text : ""; var outputAssemblyName = ""; // todo expose outputAssemblyName on GUI //DI.config.addPathToCurrentExecutableEnvironmentPathVariable(DI.config.O2TempDir); sourceCodeEditor.saveSourceCode(); var filesToCompile = new List<String> {sourceCodeEditor.sPathToFileLoaded}; if (compileEngine.compileSourceFiles(filesToCompile, lsExtraReferencesToAdd.ToArray(), ref aCompiledAssembly, ref sErrorMessages, false /*verbose*/, exeMainClass, outputAssemblyName)) { // if we only have 1 class in the completed code, set tbMainClass.Text to it if (aCompiledAssembly.GetTypes().Length == 1) tbMainClass.Text = aCompiledAssembly.GetTypes()[0].FullName; lbSourceCode_CompilationResult.ForeColor = Color.Black; lbSourceCode_CompilationResult.Items.Add("No errors"); O2Messages.dotNetAssemblyAvailable(aCompiledAssembly.Location); //if (assemblyInvoke != null) // assemblyInvoke.loadAssembly(aCompiledAssembly, cbAutoExecuteOnMethodCompile.Checked); } else { //assemblyInvoke.setControlsEnableState(false); lbSourceCode_CompilationResult.ForeColor = Color.Red; CompileEngine_WinForms.addErrorsListToListBox(sErrorMessages, lbSourceCode_CompilationResult); } if (cbAutoSaveOnCompile.Checked) sourceCodeEditor.saveSourceCode(); } }