博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SYSTEM.NET.SOCKET命名空间之TCPCLIENT类和UDPCLIENT类
阅读量:6899 次
发布时间:2019-06-27

本文共 2143 字,大约阅读时间需要 7 分钟。

我看书上的测试IP都是本地主机,所以没多少问题,但如何真正运用到网络上,可能还要有很多注意的细节。。。

1 using System; 2 using System.Collections.Generic; 3 using System.ComponentModel; 4 using System.Data; 5 using System.Drawing; 6 using System.Linq; 7 using System.Text; 8 using System.Threading.Tasks; 9 using System.Windows.Forms;10 using System.Net;11 using System.Net.Sockets;12 13 namespace WindowsFormsApplication114 {15     public partial class Form1 : Form16     {17         public Form1()18         {19             InitializeComponent();20         }21 22         private void button1_Click(object sender, EventArgs e)23         {24             TcpListener tcplistener = null;25             IPAddress ipaddress = IPAddress.Parse(textBox1.Text);26             int port = Convert.ToInt32(textBox2.Text);27             tcplistener = new TcpListener(ipaddress, port);28             tcplistener.Start();29             richTextBox1.Text = "等待连接。。。\n";30             TcpClient tcpclient = null;31             if (tcplistener.Pending())32                 tcpclient = tcplistener.AcceptTcpClient();33             else34                 tcpclient = new TcpClient(textBox1.Text, port);35             richTextBox1.Text += "连接成功!!\n";36             tcpclient.Close();37             tcplistener.Stop();38         }39 40         private void button2_Click(object sender, EventArgs e)41         {42             richTextBox2.Text = string.Empty;43             UdpClient udpclient = new UdpClient(Convert.ToInt32(textBox4.Text));44             udpclient.Connect(textBox3.Text, Convert.ToInt32(textBox4.Text));45             Byte[] sendBytes = Encoding.Default.GetBytes(textBox5.Text);46             udpclient.Send(sendBytes, sendBytes.Length);47             IPEndPoint ipendpoint = new IPEndPoint(IPAddress.Any, 0);48             Byte[] receiveBytes = udpclient.Receive(ref ipendpoint);49             string returnData = Encoding.Default.GetString(receiveBytes);50             richTextBox2.Text = "接收到的信息: " + returnData.ToString();51             richTextBox2.Text += "\n 这条信息来自主机 " + ipendpoint.Address.ToString()52                 + " 上的 " + ipendpoint.Port.ToString()  +"端口";53         }54     }55 }

转载地址:http://oqsdl.baihongyu.com/

你可能感兴趣的文章
Javascript刷新页面的几种方法
查看>>
JS中apply和call的联系和区别
查看>>
十分钟让你的javascript登峰造极
查看>>
dotnet run 段错误
查看>>
怎样在RedHat Linux上使用oracle-validated包
查看>>
模拟web高并发
查看>>
解决数据重复导致查询出错问题
查看>>
springmvc(4)注解简单了解
查看>>
HTMLCSS学习笔记(四)----浮动原理及清浮动
查看>>
探究如何求两数的最大公约数(两种方法)
查看>>
Better Django models
查看>>
第 8 章 容器网络 - 054 - 准备 macvlan 环境
查看>>
第 10 章 容器监控 - 081 - Weave Scope 多主机监控
查看>>
FLASK爬坑笔记
查看>>
[haoi2008]圆上的整点
查看>>
node.js常用方法
查看>>
iscroll手册
查看>>
5.Struts2框架中的ServletAPI如何获取
查看>>
java学习路线
查看>>
layui-学习01-基本api
查看>>