Beispiel #1
0
 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();
     }
 }
Beispiel #2
0
        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());
 }
Beispiel #5
0
        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();
            }
        }