private void Uygulama_OutputDataReceived(object sender, DataReceivedEventArgs e) { try { if (string.IsNullOrEmpty(e.Data)) { return; } if (!Etkin.Checked) { goto HerTürlüDevam; } string Girdi = e.Data.ToLower(); if (BaşlarVeİçerirKıstaslarıBoş) { goto Devam; } else { foreach (string biri in l_İçerir) { if (Girdi.Contains(biri)) { goto Devam; } } foreach (string biri in l_Başlar) { if (Girdi.StartsWith(biri)) { goto Devam; } } return; } Devam: foreach (string biri in l_Hariç) { if (Girdi.Contains(biri)) { return; } } HerTürlüDevam: Çıktı.AppendText(e.Data + Environment.NewLine); } catch (Exception) { } }
private void Uygulama_Exited(object sender, EventArgs e) { Başlat_Click(null, null); Çıktı.AppendText("Uygulama Kapandı"); }
private void Başlat_Click(object sender, EventArgs e) { if (Uygulama != null) { try { Uygulama.Kill(); Uygulama.Close(); } catch (Exception) { } try { Uygulama.Dispose(); } catch (Exception) { } Uygulama = null; Başlat.Text = "Başlat"; return; } int i = 0; List <string> l_ = Girdi_Başlar.Text.Split('@').ToList(); for (; i < l_.Count; i++) { l_[i] = l_[i].ToLower(); if (string.IsNullOrEmpty(l_[i])) { l_.RemoveAt(i); i--; } } l_Başlar = l_.ToArray(); i = 0; l_ = Girdi_İçerir.Text.Split('@').ToList(); for (; i < l_.Count; i++) { l_[i] = l_[i].ToLower(); if (string.IsNullOrEmpty(l_[i])) { l_.RemoveAt(i); i--; } } l_İçerir = l_.ToArray(); i = 0; l_ = Girdi_Hariç.Text.Split('@').ToList(); for (; i < l_.Count; i++) { l_[i] = l_[i].ToLower(); if (string.IsNullOrEmpty(l_[i])) { l_.RemoveAt(i); i--; } } l_Hariç = l_.ToArray(); if (l_Başlar.Length + l_İçerir.Length == 0) { BaşlarVeİçerirKıstaslarıBoş = true; } else { BaşlarVeİçerirKıstaslarıBoş = false; } Uygulama = new Process(); string kök = Girdi_Uygulama.Text + " "; kök = kök.Substring(0, kök.IndexOf(' ')); Uygulama.StartInfo.FileName = kök; kök = Girdi_Uygulama.Text.Remove(0, kök.Length).Trim(); Uygulama.StartInfo.Arguments = kök; Uygulama.StartInfo.CreateNoWindow = true; Uygulama.StartInfo.WindowStyle = ProcessWindowStyle.Hidden; Uygulama.StartInfo.UseShellExecute = false; Uygulama.StartInfo.RedirectStandardError = true; Uygulama.StartInfo.RedirectStandardOutput = true; Uygulama.ErrorDataReceived += Uygulama_OutputDataReceived; Uygulama.Exited += Uygulama_Exited; Uygulama.OutputDataReceived += Uygulama_OutputDataReceived; Uygulama.EnableRaisingEvents = true; try { Uygulama.Start(); } catch (Exception ex) { Çıktı.AppendText(Environment.NewLine + ex.ToString() + Environment.NewLine); Başlat_Click(null, null); return; } Uygulama.BeginOutputReadLine(); Uygulama.BeginErrorReadLine(); bool Var = false; foreach (string biri in Girdi_Uygulama.Items) { if (Girdi_Uygulama.Text.ToLower() == biri.ToLower()) { Var = true; break; } } if (!Var) { Girdi_Uygulama.Items.Add(Girdi_Uygulama.Text); } Var = false; foreach (string biri in Girdi_Başlar.Items) { if (Girdi_Başlar.Text.ToLower() == biri.ToLower()) { Var = true; break; } } if (!Var) { Girdi_Başlar.Items.Add(Girdi_Başlar.Text); } Var = false; foreach (string biri in Girdi_İçerir.Items) { if (Girdi_İçerir.Text.ToLower() == biri.ToLower()) { Var = true; break; } } if (!Var) { Girdi_İçerir.Items.Add(Girdi_İçerir.Text); } Var = false; foreach (string biri in Girdi_Hariç.Items) { if (Girdi_Hariç.Text.ToLower() == biri.ToLower()) { Var = true; break; } } if (!Var) { Girdi_Hariç.Items.Add(Girdi_Hariç.Text); } Başlat.Text = "Durdur"; }