private async void ConnectToServer(object sender, RoutedEventArgs e) { if (isClientConnected) { client.Close(); ClientStatus.Text = "Status: Niepołączony"; SendBtn.IsEnabled = false; ClientConBtn.Content = "Połącz"; isClientConnected = false; } else { try { isClientConnected = true; client = new FileTransferClient(ClientAddress.Text, Convert.ToInt32(ClientPort.Text)); ClientStatus.Text = "Status: Łączenie..."; ClientConBtn.Content = "Przerwij"; await client.ConnectAsync(); ClientStatus.Text = "Status: Połączony"; SendBtn.IsEnabled = true; } catch (Exception) { ClientStatus.Text = "Status: Niepołączony"; SendBtn.IsEnabled = false; ClientConBtn.Content = "Połącz"; isClientConnected = false; } } }
static void Main(string[] args) { string text = "Hello World"; // tekst do zakodowania var encoded = Telekom.Encoding.Huffman.Encode(text); // zakodowanie var decoded = Telekom.Encoding.Huffman.Decode(encoded); // odkowowanie Console.WriteLine(text == decoded); // praca z gniazdami var server = new FileTransferServer("127.0.0.1", 5678); var client = new FileTransferClient("127.0.0.1", 5678); var t1 = server.AcceptAsync(); var t2 = client.ConnectAsync(); Task.WaitAll(t2, t1); var t3 = client.SendAsync(@"E:\filename.txt"); Thread.Sleep(5000); var t4 = server.ReceiveAsync(@"E:\file.txt"); Task.WaitAll(t4, t3); }