日期:2014-05-19  浏览次数:21035 次

求C#实现的UDP文件传输的例子!
谢谢人心人啦!!!我很急呀!

------解决方案--------------------
下边这个文章是IP UDP 做成Multicasting 的, E文,带源代码:

http://www.codeproject.com/cs/internet/multicast.asp

SERVER的一些关键代码:

//定义一个UDP的SOCKET.
Socket s=new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);

//加入MULTICAST 组. MULTICAST 的IP必需: 224.0.0.0-239.255.255.255
IPAddress ip=IPAddress.Parse( "224.5.6.7 ");
s.SetSocketOption(SocketOptionLevel.IP,SocketOptionName.AddMembership, new MulticastOption(ip));
s.SetSocketOption(SocketOptionLevel.IP, SocketOptionName.MulticastTimeToLive, 2);
IPEndPoint ipep=new IPEndPoint(ip, 4567);
s.Connect(ipep);

//例子是: 发送字母 ABCDEFGHIJ
//在此把你的文件读成一个byte[],然后发送.
byte[] b=new byte[10];
for(int x=0;x <b.Length;x++) b[x]=(byte)(x+65);

s.Send(b,b.Length,SocketFlags.None);