CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  C#

C# socket问题 请高手指点

楼主earthgoshawk(追求)2005-08-02 14:21:54 在 .NET技术 / C# 提问

如下监听代码   运行时出现“通常每个套接字地址(协议/网络地址/端口)只允许使用一次”  
  try  
  {  
  IPAddress   ServerIp=System.Net.Dns.Resolve(164.192.0.168).AddressList[0];  
  IPEndPoint   iep=new   IPEndPoint(ServerIp,int.Parse(80));  
  socket=new   Socket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);  
  byte[]   byteMessage=new   byte[100];      
  this.lTemp.Text=iep.ToString();  
  socket.Bind(iep);      
  while(true)  
  {  
  try  
   
  {  
   
  socket.Listen(5);  
   
  Socket   newSocket=socket.Accept();  
   
  newSocket.Receive(byteMessage);  
  string   sTime   =   DateTime.Now.ToShortTimeString   (   )   ;  
  string   msg=sTime+":"+"Message   from:";  
  msg+=newSocket.RemoteEndPoint.ToString()+Encoding.Default.GetString(byteMessage);  
  this.listBox1.Items.Add(msg);                                            
  }  
  catch(SocketException   ex)  
  {  
  this.lTemp.Text+=ex.ToString();  
  }  
   
   
  }  
  }  
  catch(System.ArgumentNullException   E)  
  {  
  MessageBox.Show(E.Message);  
  }  
  catch(System.Net.Sockets.SocketException   E)  
  {  
  MessageBox.Show(E.Message,"完成",MessageBoxButtons.OK,MessageBoxIcon.Stop);  
  }  
  catch(   System.Exception   E)  
  {  
  MessageBox.Show(E.Message,"完成",MessageBoxButtons.OK,MessageBoxIcon.Stop);  
  }  
  finally  
  {  
  socket.Close();  
  } 问题点数:66、回复次数:10Top

1 楼superfishmanweb(我也是千百个不愿意呀)回复于 2005-08-02 14:33:46 得分 30

同一个端口的socket只能new一个Top

2 楼earthgoshawk(追求)回复于 2005-08-02 16:44:24 得分 0

希望具体一点异常出现在socket.Bind(iep);可是要监听需要bind       希望帮助解决一下。  
  Top

3 楼windwolfreal(windwolf)回复于 2005-08-02 17:07:12 得分 26

listen放到while外面去  
  Top

4 楼windwolfreal(windwolf)回复于 2005-08-02 17:09:52 得分 0

IPAddress   ServerIp=IPAddress.Parse("164.192.0.168;  
  IPEndPoint   iep=new   IPEndPoint(ServerIp,80);  
  ...  
  socket.Bind(iep);  
  socket.Listen(5);  
  while(true)  
  {  
      try  
      {  
          socket.Accept();  
  ...Top

5 楼windwolfreal(windwolf)回复于 2005-08-02 17:10:41 得分 0

IPAddress   ServerIp=IPAddress.Parse("164.192.0.168");  
  IPEndPoint   iep=new   IPEndPoint(ServerIp,80);  
  ...  
  socket.Bind(iep);  
  socket.Listen(5);  
  while(true)  
  {  
      try  
      {  
          socket.Accept();  
  ...  
  Top

6 楼earthgoshawk(追求)回复于 2005-08-03 08:34:27 得分 0

是过了   结果还是一样的   还是不允许   请高手指点Top

7 楼songhtao(三十年孤独)回复于 2005-08-03 08:36:43 得分 10

服务器ip多次绑定。Top

8 楼earthgoshawk(追求)回复于 2005-08-03 09:07:26 得分 0

songhtao(三十年孤独)   具体点Top

9 楼earthgoshawk(追求)回复于 2005-08-03 09:08:54 得分 0

以上方法皆不可行   请高手指点Top

10 楼earthgoshawk(追求)回复于 2005-08-03 14:18:57 得分 0

请高手指点   在服务器端为什么接不到消息Top

相关问题

  • C++高手请指点
  • 是C++高手的请进来指点!
  • C 语法问题, 请指点
  • 用dev-c++的请指点!!!!!急!!
  • 初学c++,请高手指点一下!
  • 想学C++,请大家指点方向!
  • 想学C++,请大家指点方向!
  • C++沉思录一问题,请指点!
  • 请问VC6.0的socket方法转成C#的语法问题,请大家多多指点,解决立刻给分
  • 请问VC6.0的socket方法转成C#的语法问题,请大家多多指点,解决立刻给分

关键词

  • .net
  • socket
  • iep
  • serverip
  • ipendpoint
  • bytemessage
  • newsocket
  • ipaddress
  • 请高手指点
  • listen

得分解答快速导航

  • 帖主:earthgoshawk
  • superfishmanweb
  • windwolfreal
  • songhtao

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo