public void Run(ref ListBox list) { //if (!Compile(ref list,false)) return; //runner = new Process(); list.Items.Add("---------------------------------------------------------------------------------------"); list.Items.Add(Translator.Translate("Running " + this.fileExe())); if (!File.Exists(this.fileExe())) { list.Items.Add(Translator.Translate("Error: This code has not compiled!")); return; } try { runner.StartInfo.FileName = this.fileExe(); runner.StartInfo.WorkingDirectory = Path.GetDirectoryName(this.fileExe()); //runner.StartInfo.Arguments="/c cd "+Path.GetDirectoryName(this.fileExe())+" && "+Path.GetFileName(this.fileExe()); //MessageBox.Show(this.fileExe()); runner.EnableRaisingEvents = true; Stopwatch watch = new Stopwatch(); watch.Start();// tính thời gian bắt đầu.... runner.Start(); //MessageBox.Show(""); runner.WaitForExit(); watch.Stop(); // tính thời gian dừng lại... if (runner.ExitCode != 0) { list.Items.Add(Translator.Translate("Process terminated with status") + " " + runner.ExitCode.ToString()); list.Items.Add(Translator.Translate("Reason:") + " " + Translator.Translate2(runner.ExitCode.ToString())); list.SelectedIndex = list.Items.Count - 1; AppSound.Play("fail.wav"); MessageBox.Show(Translator.Translate("The programs exited with exit code: " + runner.ExitCode.ToString()), "Olala Pascal Runner"); } else { list.Items.Add(Translator.Translate("Process exited successful with runtime: ") + " " + watch.Elapsed.TotalSeconds.ToString() + " " + Translator.Translate(" seconds.")); AppSound.Play("success.wav"); } list.Items.Add(""); list.SelectedIndex = list.Items.Count - 1; } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); //runner.Dispose(); return; } //runner.Dispose(); }
private void button1_MouseHover(object sender, EventArgs e) { AppSound.Play("hover.wav"); }