public void ListenData(object obj)
        {
            //Socket clientSK = (Socket)obj;
            while (true)
            {
                try
                {
                    if (client.Connected)
                    {
                        byte[] buff = new byte[1024];
                        int    recv = client.Receive(buff);
                        if (recv > 0)
                        {
                            //HamGiaiMa(buff);
                            //txtMain.AppendText("Client: "+Encoding.UTF8.GetString(buff)+"\n");
                            txtMain.AppendText("Client: " + Encoding.ASCII.GetString(buff).ToString() + "\n");
                            //txtMain.AppendText("Client: " + buff.ToString() + "\n");
                            txtMain.ScrollToCaret();
                            //MessageBox.Show(recv.ToString());
                        }
                        else
                        {
                            connect = false;
                            DisposeSocket();
                            ClientThread.Abort();
                        }
                    }
                    else
                    {
                        connect = false;
                        DisposeSocket();
                        ClientThread.Abort();
                    }

                    //if (recv > 1)
                    //{
                    //    //HamGiaiMa(buff);
                    //    //txtMain.AppendText("Client: "+Encoding.UTF8.GetString(buff)+"\n");
                    //    txtMain.AppendText("Client: " + Encoding.ASCII.GetString(buff) + "\n");
                    //    txtMain.ScrollToCaret();
                    //    //MessageBox.Show(recv.ToString());
                    //}
                    //else
                    //{
                    //    connect = false;
                    //    DisposeSocket();
                    //    ClientThread.Abort();
                    //}
                }
                catch (Exception exp)
                {
                    //MessageBox.Show("Mat ket noi");
                    notifyIcon.BalloonTipText = "MAT KET NOI";
                    notifyIcon.ShowBalloonTip(500);
                    ClientThread.Abort();
                }
            }
        }
 public override void disconnect(bool disconnect)
 {
     if (disconnect)
     {
         _storage.SaveFile();
         sendPacket(new PacketDisconnectResponse()
         {
             disconnectOk = true
         });
         TcpClient.Close();
         ClientThread.Abort();
         Console.WriteLine("Client closed: {0}", identifier.Username);
     }
 }