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; }