Пример #1
0
 private void Connect(string IP, string Port, string Name)
 {
     Control.CheckForIllegalCrossThreadCalls = false; //忽略跨執行緒操作的錯誤
     try
     {
         IPEndPoint EP = new IPEndPoint(IPAddress.Parse(IP), int.Parse(Port));//建立伺服器端點資訊
         T = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
         T.Connect(EP);
         Th = new Thread(Listen)
         {
             IsBackground = true
         };
         Th.Start();//開始監聽
         textBox1.AppendText("(系統) : 已連線伺服器! \r\n");
         Send("L" + Name);
     }
     catch
     {
         fLogin login = new fLogin()
         {
             Netip   = Netip,
             Netport = Netport,
             Netname = Netname
         };
         login.Show();
         textBox1.AppendText("(系統) : " + Name + " 無法連上伺服器! \r\n");
         this.Close();
     }
 }
Пример #2
0
 private void Exit_btu_Click(object sender, EventArgs e)
 {
     try
     {
         fLogin login = new fLogin()
         {
             Netip   = Netip,
             Netport = Netport,
             Netname = Netname
         };
         login.Show();
         Send("9" + Netname); //傳送自己的離線訊息給伺服器
         if (T != null)
         {
             T.Close();            //關閉網路通訊器
         }
         this.Close();
     }
     catch { }
 }