コード例 #1
0
        private void tbPort_Changed(object sender, TextChangedEventArgs e)
        {
            int          id = Convert.ToInt32(((TextBox)sender).Name.Replace("p", ""));
            ServerEntity se = this.serverManger.getServerById(id);

            se.setPortFromString(((TextBox)sender).Text);
            Console.WriteLine("Modifica porta [" + ((TextBox)sender).Text + "] per " + se.name);
        }
コード例 #2
0
        private void tbPassword_Changed(object sender, TextChangedEventArgs e)
        {
            int          id = Convert.ToInt32(((TextBox)sender).Name.Replace("k", ""));
            ServerEntity se = this.serverManger.getServerById(id);

            se.setPassword(((TextBox)sender).Text);
            Console.WriteLine("Modifica password per " + se.name);
        }
コード例 #3
0
        private void checkbox_Checked(object sender, RoutedEventArgs e)
        {
            enableConnectButton();
            CheckBox cb    = (CheckBox)sender;
            String   rem   = cb.Name.Replace("cb", "");
            int      index = Convert.ToInt32(rem);

            Console.WriteLine("Attivazione della cb " + cb.Name);
            ServerEntity selectedServer = this.serverManger.getServerById(index);

            this.serverManger.selectedServers.Add(selectedServer);
        }
コード例 #4
0
        private void processFoundComputer(string computerName, int index)
        {
            //aggiungo il server alla lista dei server disponibili
            //costruisco server Entity
            ServerEntity se = new ServerEntity(computerName);

            se.setId(index);
            this.serverManger.availableServers.Add(se);


            this.lvComputers.Dispatcher.Invoke(DispatcherPriority.Background, new Action(() =>
            {
                Label l = new Label {
                    Content = computerName
                };
                layout.setComputerNameLabelLayout(l);

                //create textbox for password
                TextBox tbPwd = new TextBox()
                {
                    Name = "k" + index
                };                                                    //t for the passwords
                tbPwd.TextChanged += tbPassword_Changed;
                layout.setPasswordTextBoxLayout(tbPwd);

                //create port field
                TextBox tbPort = new TextBox()
                {
                    Name = "p" + index
                };                                                     //p for the ports
                tbPort.TextChanged += tbPort_Changed;
                layout.setPortTextBoxLayout(tbPort);

                //create button checkin button
                String cbname = "cb" + index;
                CheckBox cbox = new CheckBox {
                    Name = cbname
                };
                cbox.Checked   += checkbox_Checked; //ADD EVENT
                cbox.Unchecked += checkbox_Unchecked;
                layout.setCheckBoxLayout(cbox);
                //add elements to the window
                this.lvComputers.Items.Add(new MyListViewItem(l, tbPwd, tbPort, cbox));
            }));
        }
コード例 #5
0
 public void disconnectFromServer(ServerEntity se)
 {
     if (se.UdpSender != null)
     {
         se.UdpSender.Close();
     }
     if (se.server != null)
     {
         se.server.Close();
     }
     if (se.CBClient != null)
     {
         se.CBClient.Close();
     }
     if (this.cbSocketServer != null)
     {
         this.cbSocketServer.Server.Close();
     }
 }
コード例 #6
0
        public void connectToServer( ServerEntity e)
        {
            try
            {
                Console.WriteLine("Mi sto connettendo al server " + e.name);
                e.server = new TcpClient();
                e.server.Connect(e.ipAddress, e.port_base);
                e.stream = e.server.GetStream();
                //exchange data for authentication
                //connetto sender udp
                e.UdpSender = new UdpClient();
                e.UdpSender.Connect(e.ipAddress, e.port_base);
                //connect to clipboard
                if (e.authenticateWithPassword() == false)
                {
                    Console.WriteLine("Password errata");
                    e.server.Close();
                    e.server = null; //convenzione in modo tale che il conn checker si accorga che la password non vabbène
                    return;
                }
                //e.initCBListener(); // lancio il cb listener del client
                //connessione delle clipboard
                e.CBClient = new TcpClient(e.name, Properties.Settings.Default.CBPort); // client si connette al cb listener del server
                //creazione del listener cb lato client per ricevere la cb dal server
                //e.runCBListenerFaster(); // run clipboard listener che comincia la fase di accept, e dopo aver accettato riceve all'infinito
                //e.cbServer.Connect(new IPEndPoint(e.ipAddress, 9898));
                Console.WriteLine("Connesso al server " + e.name);

            }
            catch (Exception ex)
            {
                e.server.Close();
                e.server = null;
                Console.WriteLine("Errore in connessione con " + e.name + "\nMessaggio : "+ ex.Message);
                return;
            }
        }
コード例 #7
0
 public void connectToServer(ServerEntity e)
 {
     try
     {
         Console.WriteLine("Mi sto connettendo al server " + e.name);
         e.server = new TcpClient();
         e.server.Connect(e.ipAddress, e.port_base);
         e.stream = e.server.GetStream();
         //exchange data for authentication
         //connetto sender udp
         e.UdpSender = new UdpClient();
         e.UdpSender.Connect(e.ipAddress, e.port_base);
         //connect to clipboard
         if (e.authenticateWithPassword() == false)
         {
             Console.WriteLine("Password errata");
             e.server.Close();
             e.server = null; //convenzione in modo tale che il conn checker si accorga che la password non vabbène
             return;
         }
         //e.initCBListener(); // lancio il cb listener del client
         //connessione delle clipboard
         e.CBClient = new TcpClient(e.name, Properties.Settings.Default.CBPort); // client si connette al cb listener del server
         //creazione del listener cb lato client per ricevere la cb dal server
         //e.runCBListenerFaster(); // run clipboard listener che comincia la fase di accept, e dopo aver accettato riceve all'infinito
         //e.cbServer.Connect(new IPEndPoint(e.ipAddress, 9898));
         Console.WriteLine("Connesso al server " + e.name);
     }
     catch (Exception ex)
     {
         e.server.Close();
         e.server = null;
         Console.WriteLine("Errore in connessione con " + e.name + "\nMessaggio : " + ex.Message);
         return;
     }
 }
コード例 #8
0
 public void disconnectFromServer(ServerEntity se)
 {
     if(se.UdpSender!=null)
             se.UdpSender.Close();
        if(se.server != null)
             se.server.Close();
        if(se.CBClient!= null)
            se.CBClient.Close();
        if(this.cbSocketServer!=null )
            this.cbSocketServer.Server.Close();
 }