public void DoStop() { StopBtn.IsEnabled = false; StartBtn.IsEnabled = true; HostNameBox.IsEnabled = true; IntervalBox.IsEnabled = true; WarningBox.IsEnabled = true; TimeoutBox.IsEnabled = true; PacketSizeBox.IsEnabled = true; if (Pinger != null) { Pinger.Stop(); } }
protected override void OnFormClosing(FormClosingEventArgs e) { //Notify.KillAndClose(); ni.Dispose(); CloseAll(); Pinger.Stop(); SettingsWriter w = new SettingsWriter(Settings.Reg); w.Write(total, "TOTAL"); w.Close("Total"); GlobalProperties.Client.Close(); if (Opacity != 0.0) { e.Cancel = true; new Thread(() => { while (Opacity != 0.0) { Invoke((MethodInvoker) delegate { Opacity -= 0.1; }); Thread.Sleep(50); } Invoke((MethodInvoker) delegate { base.OnFormClosing(e); Environment.Exit(0); }); }).Start(); } }
/// <summary> /// When URL changes stops and restarts everything. /// </summary> private void UrlSelector_URLChanged(object sender, string e) { Pinger.Stop().ContinueWith((previousTask) => { _dispatcher.Invoke(new Action(() => { PingManipulator.Reset(); Graph.Reset(); Display.Reset(); Pinger.Start(e); })); }); }
/// <summary> /// Stops the pinger. /// </summary> public Task Stop() { Pinger.NewPing -= Pinger_NewPing; return(Pinger.Stop()); }
void listen() { if (listeners == null) { listeners = new List <Listener>(); Clients = new List <Client>(); foreach (int port in Settings.Ports) { Listener l = new Listener(); if (l.Listen(port)) { l.SocketAccepted += listener_SocketAccepted; EventLogger.LogEvent("Listening", "Successfully listening on port " + port.ToString()); } else { EventLogger.LogEvent("Listening Failed", "Unable to listen on port " + port.ToString()); } if (l.Running) { listeners.Add(l); } } EventLogger.LogEvent("Started", "Net-Weave R has been started"); startToolStripMenuItem.Text = startToolStripMenuItem.Text.Replace("Listen", "Stop"); Pinger.Start(ref Clients); } else { Pinger.Stop(); StatusDialog d = new StatusDialog(); d.SetStatus("Stopping Listeners..."); new Thread(delegate() { foreach (Listener l in listeners) { if (l.Running) { l.SocketAccepted -= listener_SocketAccepted; l.Stop(); EventLogger.LogEvent("Listening Stopped", "The listener for port " + l.Port + " has been stopped"); } } Restart(); d.SetStatus("Disconnecting Clients..."); if (Clients.Count > 0) { for (int i = 0; i < Clients.Count; i++) { Clients[i].DataReceived -= client_DataReceived; Clients[i].DataSent -= client_DataSent; Clients[i].Disconnected -= client_Disconnected; Clients[i].Close(); } } listeners.Clear(); listeners = null; Clients.Clear(); Clients = null; Invoke((MethodInvoker) delegate { EventLogger.LogEvent("Stopped", "Net-Weave R has been stopped"); startToolStripMenuItem.Text = startToolStripMenuItem.Text.Replace("Stop", "Listen"); lstClients.Items.Clear(); d.Close(); }); }).Start(); d.ShowDialog(); } }