C# System.Net.Sockets.SocketException 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败

问题描述

我的C#udp通信协议有时候运行正常,有时候出现问题,不知道是什么情况,具体代码如下:

privatestaticvoidRecieveData(){byte[]CmdStart_02=newbyte[8]{0x12,0x34,0x00,0x02,0x00,0x00,0x00,0x00};byte[]CmdSetBias=newbyte[8]{0x12,0x34,0x00,0x42,0x00,0x00,0x00,0x00};byte[]data=newbyte[1024];//stringinput,stringData;//构建TCP服务器Console.WriteLine("ThisisaClient,hostnameis{0}",Dns.GetHostName());//设置服务IP,设置TCP端口号IPEndPointipep=newIPEndPoint(IPAddress.Parse("192.168.1.1"),49152);//定义网络类型,数据连接类型和网络协议UDPSocketserver=newSocket(AddressFamily.InterNetwork,SocketType.Dgram,ProtocolType.Udp);server.SendTo(CmdStart_02,CmdStart_02.Length,SocketFlags.None,ipep);server.SendTo(CmdSetBias,CmdSetBias.Length,SocketFlags.None,ipep);IPEndPointsender=newIPEndPoint(IPAddress.Any,0);try{server.Connect(sender);}catch(System.Exceptione){Console.WriteLine("unabletoconnecttheserver");Console.WriteLine(e.ToString());return;}EndPointRemote=(EndPoint)sender;Console.WriteLine("Messagereceivedfrom{0}:",Remote.ToString());data=newbyte[1024];server.SetSocketOption(SocketOptionLevel.Socket,SocketOptionName.ReceiveTimeout,1000);server.Blocking=true;intrecv=0;try{recv=server.ReceiveFrom(data,refRemote);Console.WriteLine(Remote.ToString());}catch(System.Exceptione){Console.WriteLine(e);Console.WriteLine(e.ToString());}Console.WriteLine("Messagereceivedfrom{0}:",Remote.ToString());Console.WriteLine(Encoding.ASCII.GetString(data,0,recv));while(true){data=newbyte[1024];//inttemp=0,temp1=0;intCountZ;try{recv=server.ReceiveFrom(data,refRemote);}catch(System.Exceptione){Console.WriteLine(e.ToString());}CountZ=data[20]*16777216+data[21]*65535+data[22]*256+data[23];prg1.globalCountZ1=CountZ;//输出实时测量到的力传感器数值doubleZforc;Zforc=prg1.globalCountZ1/1000000;if((count%2000)==0)Console.WriteLine(Zforc);count++;}//Console.WriteLine("StoppingClient.");server.Close();}提示的异常为:System.Net.Sockets.SocketException由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。可能问题出在recv=server.ReceiveFrom(data,refRemote);上面,如果不出现问题Remote会显示正常的连接IPEndPoint,如果出现问题,Remote会为空。恳求大神指点!!!!!!!

解决方案

解决方案二:
服务器忙,请稍后再拨...

时间: 2024-10-02 23:53:47

C# System.Net.Sockets.SocketException 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败的相关文章

win server服务器做迁移后,外网webservice地址在ie中无法访问了!!怎么办?!和网络有关?报错:由于连接方在一段时间后没有正确答复或连接的主机

问题描述 各位大虾帮帮忙啊!女汉纸感激不尽啊!windowserver服务器做过迁移后,外网webservice地址就无法访问了(ie里输入地址没办法打开).但是本地localhost可以正常打开service.asmx.外网例子:http://XXX.XXX.com/Service/service.asmx本地:http://localhost/Service/service.asmx完全不知道怎么办了..也不知道是不是跟迁移有关..请问:怎么判断问题出在哪里啊?如何修复?和网络有关吗?程序运

System.Net.Sockets.SocketException: 您的主机中的软件放弃了一个已建立的连接

问题描述 短信接口是一个http地址(get方式),我用一下代码实现HttpWebRequesthr=(HttpWebRequest)WebRequest.Create(targeturl);hr.UserAgent="Mozilla/4.0(compatible;MSIE6.0;WindowsNT5.1)";hr.Method="GET";hr.Timeout=30*60*1000;WebResponsehs=hr.GetResponse();Streamsr=h

System.Net.Sockets.SocketException: 以一种访问权限不允许的方式做了一个访问套接字的尝试

问题描述 用C#做的新建的网络原始套接字来发送数据包是出现以下错误:"System.Net.Sockets.SocketException:以一种访问权限不允许的方式做了一个访问套接字的尝试"求大神指导!!!!!!!! 解决方案 解决方案二:引用错误,访问被禁止解决方案三:引用1楼zhang1struts1yun的回复: 引用错误,访问被禁止 具体的解决方案有没有,在VS2008上能运行没错误,但是用vs2010以上版本就有错误!!!!解决方案四:如果用到SocketType.Raw的

System.Net.Sockets.SocketException: 在 getsockopt 或 setsockopt

问题描述 udpListener=newSocket(AddressFamily.InterNetwork,SocketType.Dgram,ProtocolType.Udp);断点到这句话,鼠标放上去后,就会报有这个异常存在,请问这个问题如何解决,谢谢!小弟很是郁闷,在网上搜了好久,也没找到答案. 解决方案 本帖最后由 jaojie 于 2011-05-08 07:28:09 编辑解决方案二:我也出现了同样的问题,求高手指教.解决方案三:udpListener这个是什么类的对象??UDP是没有

System.Net.Sockets.SocketException: 由于目标计算机积极拒绝,无法连接

问题描述 用的是别人的api,其他人使用都正常,我这就不行.后面给出了一个ip,我去ping是ping得通的. 解决方案 解决方案二:你要用telnetIp端口解决方案三:积极拒绝的意思就是目标计算机能连上,但你要连接的端口不存在,所以被拒绝了.要么你给错端口,要么对方使用端口的应用没启动

xamarin for android 网络通讯 是调用 system.Net.Sockets 吗?

问题描述 xamarinforandroid网络通讯是调用system.Net.Sockets吗?xamarinforandroid网络通讯简单例子提供一下,要做一个电力通讯的手机小软件,刚接触这一块,有高手,请指点一下. 解决方案 解决方案二:自己顶一下,xamarin国内资料有点少,我这边有些资料,XamariniOS开发实战(上册)试读C#开发Android应用实战--使用MonoforAndroid和.NETC#源程序iPhone高级编程--使用MonoTouch和.NETC#.PDF有

单点登录的远程链接数据库出错

问题描述 问题:在与SQLServer建立连接时出现与网络相关的或特定于实例的错误.未找到或无法访问服务器.请验证实例名称是否正确并且SQLServer已配置为允许远程连接.(provider:命名管道提供程序,error:40-无法打开到SQLServer的连接)说明:执行当前Web请求期间,出现未处理的异常.请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息.异常详细信息:System.Data.SqlClient.SqlException:在与SQLServer建立连接

WCF 外网无法访问的问题

问题描述 各位大侠:我做了一个宿主为windows服务的WCF,在局域网都能正常访问,今天想测试一下外网能不能访问,就把基地址改成了外网地址.结果安装服务之后发现客户端访问不了.System.ServiceModel.EndpointNotFoundException:没有终结点在侦听可以接受消息的http://180.107.118.242/service.这通常是由于不正确的地址或者SOAP操作导致的.如果存在此情况,请参见InnerException以了解详细信息.--->System.N

socket 连接问题

问题描述 usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Threading;usingSystem.Diagnostics;usingSystem.Net;usingSystem.Net.Sockets;usingSystem.ComponentModel;usingSystem.Windows.Forms;namespaceDadabaseToExcelTest