UDP服务器,数据报套接字,ReceiveFrom()引发WSAENOTCONN异常; SendTo()工作正常。 [英] UDP Server, Datagram Socket, ReceiveFrom() raises WSAENOTCONN exception; SendTo() works fine.
问题描述
我正在运行一个简单的应用程序,试图设置与远程UDP客户端通信的UDP服务器。 一切正常 - 在客户端发送,接收和SendTo,但是,ReceiveFrom导致SocketException错误代码 WSAENOTCONN 。
I'm running a simple app that attempts to setup a UDP Server communicating with a remote UDP Client. Everything works - send, receive on the client side and SendTo on this side, but ReceiveFrom causes a SocketException with error code WSAENOTCONN.
这是可疑的udp服务器代码:
Here is the suspect udp server code :
---
---
        localEndPoint = gcnew IPEndPoint(IPAddress :: Any,port);
      socket = gcnew Socket(localEndPoint-> AddressFamily,
SocketType :: Dgram,
ProtocolType :: Udp);
&NBSP; &NBSP; &NBSP; socket-> Bind(safe_cast< EndPoint ^>(localEndPoint));
&NBSP; &NBSP; &NBSP; socket-> ReceiveTimeout = rcvTimeout;
&NBSP; &NBSP; &NBSP; socket-> SendTimeout = sndTimeout;
&NBSP; &NBSP; &NBSP; remoteEndPoint = gcnew IPEndPoint(IPAddress :: Any,0);
&NBSP; &NBSP; &NBSP; endPoint &NBSP; &NBSP; = safe_cast< EndPoint ^>(remoteEndPoint);
localEndPoint = gcnew IPEndPoint(IPAddress::Any, port);
socket = gcnew Socket(localEndPoint->AddressFamily,
SocketType::Dgram,
ProtocolType::Udp);
socket->Bind(safe_cast<EndPoint^>(localEndPoint));
socket->ReceiveTimeout = rcvTimeout;
socket->SendTimeout = sndTimeout;
remoteEndPoint = gcnew IPEndPoint(IPAddress::Any, 0);
endPoint = safe_cast<EndPoint^>(remoteEndPoint);
...
array< Byte> ^ data = Text :: Encoding :: ASCII-> GetBytes(msg);
socket-> SendTo(data,data-> Length,SocketFlags :: None,endPoint);
array<Byte>^data = Text::Encoding::ASCII->GetBytes(msg);
socket->SendTo(data, data->Length, SocketFlags::None, endPoint);
...
&NBSP; &NBSP; Int32字节;
&NBSP; &NBSP; array< Byte> ^ data = gcnew array< Byte>(256);
&NBSP; &NBSP; bytes = socket-> ReceiveFrom(data,SocketFlags :: None,endPoint);
---
bytes = socket->ReceiveFrom(data, SocketFlags::None, endPoint);
---
有人能告诉我怎么了 ? &NBSP;非常感谢。
Could someone tell me what is wrong ? Much appreciated.
推荐答案
您好iGUB14,
Hi iGUB14,
欢迎来到MSDN论坛。
Welcome to MSDN forum.
此论坛正在讨论Visual Studio WPF / SL Designer,Visual Studio Guidance Automation Toolkit,开发人员文档和帮助系统,以及Visual Studio编辑器。
您的问题与C ++开发有关,我将移动此线程到
Visual Studio Languages
, Windows桌面开发
&NBSP;>&NBSP;
Visual C ++ 专业答案。
Your issue is related to C++ develop, I will move this thread to Visual Studio Languages , Windows Desktop Development > Visual C++ for a professional answer.
祝你好运,
乔伊斯
这篇关于UDP服务器,数据报套接字,ReceiveFrom()引发WSAENOTCONN异常; SendTo()工作正常。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!