欢迎来到天天文库
浏览记录
ID:39549534
大小:63.00 KB
页数:14页
时间:2019-07-06
《C#.NET Socket编程例程》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、//Socket基本编程//服务端:usingSystem.Net;usingSystem.Net.Sockets;usingSystem.Text;usingSystem.Threading;Threadmythread;Socketsocket;//清理所有正在使用的资源。protectedoverridevoidDispose(booldisposing){try { socket.Close();//释放资源 mythread.Abort();//中止线程 } catch{}if(disposing){if(components!=
2、null){components.Dispose();}}base.Dispose(disposing);}publicstaticIPAddressGetServerIP(){IPHostEntryieh=Dns.GetHostByName(Dns.GetHostName());returnieh.AddressList[0];}privatevoidBeginListen(){IPAddressServerIp=GetServerIP();IPEndPointiep=newIPEndPoint(ServerIp,8000);socket=new
3、Socket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);byte[]byteMessage=newbyte[100];this.label1.Text=iep.ToString();socket.Bind(iep);//dowhile(true){try{socket.Listen(5);SocketnewSocket=socket.Accept();newSocket.Receive(byteMessage);stringsTime=DateTime.Now.To
4、ShortTimeString();stringmsg=sTime+":"+"Messagefrom:";msg+=newSocket.RemoteEndPoint.ToString()+Encoding.Default.GetString(byteMessage);this.listBox1.Items.Add(msg);}catch(SocketExceptionex){this.label1.Text+=ex.ToString();}}//while(byteMessage!=null);}//开始监听privatevoidbutton1_C
5、lick(objectsender,System.EventArgse){try{mythread=newThread(newThreadStart(BeginListen));mythread.Start();}catch(System.Exceptioner){MessageBox.Show(er.Message,"完成",MessageBoxButtons.OK,MessageBoxIcon.Stop);}}//客户端:usingSystem.Net;usingSystem.Net.Sockets;usingSystem.Text;priva
6、tevoidbutton1_Click(objectsender,System.EventArgse){BeginSend();}privatevoidBeginSend(){stringip=this.txtip.Text;stringport=this.txtport.Text;IPAddressserverIp=IPAddress.Parse(ip);intserverPort=Convert.ToInt32(port);IPEndPointiep=newIPEndPoint(serverIp,serverPort);byte[]byteMe
7、ssage;//do//{Socketsocket=newSocket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);socket.Connect(iep);byteMessage=Encoding.ASCII.GetBytes(textBox1.Text);socket.Send(byteMessage);socket.Shutdown(SocketShutdown.Both);socket.Close();//}//while(byteMessage!=null);
8、}基于TCP协议的发送和接收端TCP协议的接收端usingSystem.Net.Sockets;//使用到TcpListe
此文档下载收益归作者所有