public void BeginSend(TransferNamespace.FilesTransfer transfer)
 {
     try
     {
         sport = HelpClass.GetAvailablePort();
         IEnumerable<object> r = clients.SendQuery(Dns.GetHostAddresses(Dns.GetHostName())[0].ToString(), transfer, sport);
         switch ((InviteRusult)r.First())
         {
             case InviteRusult.Ok:
                 {
                     SendThread = new Thread(new ParameterizedThreadStart(SendInvoke));
                     SendThread.Start(new List<object>() { transfer, new IPEndPoint(IPAddress.Parse(clients.Endpoint.Address.Uri.Host), (int)r.Last()) });
                     this.Text = string.Format("Transfering to {0}", clients.Endpoint.Address.Uri.Host);
                     break;
                 }
             case InviteRusult.Cancel:
                 {
                     try
                     {
                         if (SendThread != null)
                             SendThread.Abort();
                         if (GetThread != null)
                             GetThread.Abort();
                         this.Close();
                     }
                     catch { }
                     break;
                 }
             case InviteRusult.Busy:
                 {
                     transfer = null;
                     this.Close();
                     break;
                 }
         }
     }
     catch { }
 }
 public FileProgressForm(TransferNamespace.TransferClient client, int port)
 {
     InitializeComponent();
     this.clients = client;
     this.port = port;
 }