Ejemplo n.º 1
0
 private void button1_Click(object sender, EventArgs e)
 {
     if (button1.Text == "Connect")
     {
         _nick   = nick.Text;
         _port   = Int32.Parse(port.Text);
         channel = new TcpChannel(_port);
         RemotingServices.Marshal(_clientService, _nick, typeof(ClientService));
         ChannelServices.RegisterChannel(channel, false);
         service = (IServerServices)Activator.GetObject(typeof(IServerServices), "tcp://localhost:7777/MyService");
         service.registerClient(_nick, "tcp://localhost:" + _port + "/" + _nick);
         button1.Text = "Disconnect";
         appendMessage("-> Connected <-");
         nick.Enabled    = false;
         port.Enabled    = false;
         button2.Enabled = true;
         message.Enabled = true;
     }
     else
     {
         service.close(_nick);
         service      = null;
         button1.Text = "Connect";
         nick.Enabled = true;
         port.Enabled = true;
         conversation.Clear();
         message.Clear();
         message.Enabled = false;
         button2.Enabled = false;
         channel.StopListening(null);
         RemotingServices.Disconnect(this);
         ChannelServices.UnregisterChannel(channel);
         channel = null;
     }
 }