建立连接时无法将数据包发送给任意主机,帮忙看下代码,看怎样可以建立起通讯关系。我在调试是总是出错!

问题描述

voidSendData(byte[]data){try{IPAddressips=IPAddress.Parse(ControlIp);//("192.168.1.1");192.168.10.1IPEndPointipe=newIPEndPoint(ips,int.Parse(Port));//把ip和端口转化为IPEndPoint实例;1376UdpClientc=newUdpClient(23456);//创建一个Socketc.Connect(ipe);//连接到服务器//byte[]bs=Encoding.ASCII.GetBytes(data);c.Send(data,data.Length,ipe);//发送测试信息c.Close();//Thread.Sleep(10);}catch(Exceptione){MessageBox.Show(e.Message);Application.Exit();}stringCameraIp=@"http://192.168.8.1:8083/?action=snapshot";stringControlIp="192.168.8.1";stringPort="2001";privatevoidbuttonForward_MouseDown(objectsender,MouseEventArgse){byte[]b=newbyte[1];//b[0]=0x30+1;b[0]=0x61;if(!dupflag)SendData(b);dupflag=true;}

解决方案

解决方案二:

解决方案三:
C#UDP建立不起来两者的通讯,代码也没看出毛病在哪里?求大侠支招啊
解决方案四:
CONNECT时指定了ipe,那发送的时候就不能再用ipe了,因为已经固化了.要么不要调用CONNECT,要么Send时不要带ipe.
解决方案五:
引用3楼tcmakebest的回复:

CONNECT时指定了ipe,那发送的时候就不能再用ipe了,因为已经固化了.要么不要调用CONNECT,要么Send时不要带ipe.

您好,下面的代码我也有注释掉过,是不会出现“建立连接时无法将数据包发送给任意主机”的错误,但是还是没有将通讯建立起来//c.Connect(ipe);//连接到服务器我看到关于UDP的解释如下:“UdpClient类提供了一些简单的方法,用于在阻止同步模式下发送和接收无连接UDP数据报。因为UDP是无连接传输协议,所以不需要在发送和接收数据前建立远程主机连接。但您可以选择使用下面两种方法之一来建立默认远程主机”所以程序中只要明确要发送的地址和端口就可以了,把“c.Connect(ipe);”注释掉后程序应该是正确的,但是查找了半天,还是找不到没法建立通讯的原因。要发送的地址和端口确认无误的。
解决方案六:
UDP所谓的建立连接是虚的,其实就是指定一个默认的目标,省得每次发送都要写参数罢了.如果每次发送是指定参数,那就是"任意主机"的意思,因为可以传不同的IPE.楼主应该查查接收数据一方是否有问题,收发双方应该单独调试,找个调试工具吧.

时间: 2025-01-25 06:52:53

建立连接时无法将数据包发送给任意主机,帮忙看下代码,看怎样可以建立起通讯关系。我在调试是总是出错!的相关文章

SQL Server 建立连接时出现与网络相关的或特定于实例的错误

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

数据库连接-在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误

问题描述 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误.未找到或无法访问服务器.请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接. (provider: SQL Network Interfaces, error: 26 - 定位指定的服务器/实例时出错) static void Main(string[] args) { SqlConnection dataConnect

SQL Server 建立连接时出现与网络相关的错误

  在连接SQL Server 2000数据库的时候,出现以下错误: 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误.未找到或无法访问服务器.请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接. (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接) 在连接SQL Server 2005数据库的时候,提示一个错误!错误信息如下! 在建立与服务器的连接时出错.在连接到 SQL Server 2005

《 通信技术导论(原书第5版)》——1.2 数据包发送

1.2 数据包发送 所有的互联网流量和大部分的高速数据网流量都是通过包的形式发送的.将数据分拆成多个数据包类似于将数据装进多个信封中.分组交换由兰德公司在1962年为美国空军开发,并于1969年在国防部的阿帕网(ARPANET)中使用.ARPANET 是当今互联网的前身.国防部想要一个具有路径多样化能力的可靠的网络.开发者设想基于分组交换的ARPANET具有更高的可靠性,在那里可以完成彼此之间的互达.分组网络-包括互联网-往往更可靠,并且比传统网络能更好地处理高峰期流量,因为同一个信息的数据包可

问一个关于过大数据包发送的问题,希望高手指教,谢谢!

问题描述 可不可以这样做,发送数据包时判断如果数据包长度小于512就用udp协议,如果大于512或者某个值就用tcp发送,因为用udp分段发送的话太复杂了或许还有其他的好的办法还请各位指教,谢谢! 解决方案 解决方案二:为什么不直接就使用TCP方式发送?

在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误

错误信息: 标题: 连接到服务器 ------------------------------ 无法连接到 (local). ------------------------------ 其他信息: 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误.未找到或无法访问服务器.请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接. (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接) (Microsof

微软-在与 SQL Server 2014 建立连接时出现与网络相关的或特定于实例的错误

问题描述 在与 SQL Server 2014 建立连接时出现与网络相关的或特定于实例的错误 解决方案 1.打开Sql server 管理配置器 ? ?? ? ? ? ?或者在命令行输入:SQLServerManager10.msc ? ? 2.点击MSSQLSERVER的协议,在右侧的页面中选择TCP/IP协议 ? ?? ? ? 3.右键点击TCP/IP协议,选择"属性",需要修改连接数据库的端口地址 ? ?? ? ? 4.跳出来的对话框,里面有好多TCP......答案就在这里:与

c#-在与SQL Server建立连接时出现与网络相关的或特定于实例的错误

问题描述 在与SQL Server建立连接时出现与网络相关的或特定于实例的错误 throw new Exception(ex.Message); 这一句高亮 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误.未找到或无法访问服务器.请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接. (provider: Named Pipes Provider, error: 40 - 无法打开到 SQL Server 的连接) ONDBUtility.DLL!ON

sql server-SQL Server 建立连接时出现与网络相关的或特定于实例的错误

问题描述 SQL Server 建立连接时出现与网络相关的或特定于实例的错误 <?xml version=""1.0""?> multipleSiteBindingsEnabled=""true"" /> binding=""webHttpBinding"" contract=""Service"" /> **<con