private void button1_Click(object sender, EventArgs e) { using (TcpClientConnection client = new TcpClientConnection()) { client.NetworkStream = new NetworkStream(); client.TimeOut = 60000; client.Open(HostResolver.GetIPAddress("127.0.0.1"), 2110); MessageBox.Show("Client connected"); using (StringStream data = new StringStream("Data to be sent")) { client.WriteData(data); data.SetLength(0); client.IsReadUntilClose = true; client.ReadData(data); MessageBox.Show(data.DataString); } client.Close(true); MessageBox.Show("Client disconnected"); } }
private void btnPing_Click(object sender, EventArgs e) { using (var client = new IcmpConnection()) { client.NetworkStream = new NetworkStream(); client.TimeOut = 1000; client.Open(HostResolver.GetIPAddress(txtHost.Text)); txtResult.Text = ""; for (int i = 0; i < 4; i++) { try { client.SendEchoRequest(); var response = client.ReceiveResponse(); if (!(response.IcmpPacket is IcmpEchoPacket)) { throw new Exception("Invalid ICMP reply"); } txtResult.Text += String.Format("Reply from {0}: seq={1} received bytes={2} time={3}ms TTL={4}\r\n", txtHost.Text, (response.IcmpPacket as IcmpEchoPacket).SequenceNumber, (response.IcmpPacket as IcmpEchoPacket).Data.Length, response.RoundTripTime, response.IpHeader.Ttl); System.Threading.Thread.Sleep(1000); } catch (Exception ex) { txtResult.Text += " Error: " + ex.Message + "\r\n"; } } } }