Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 远程UDP发送和接收_C#_Udp_Client Server - Fatal编程技术网

C# 远程UDP发送和接收

C# 远程UDP发送和接收,c#,udp,client-server,C#,Udp,Client Server,我正在尝试创建一个服务器/客户机应用程序,该应用程序将在两台或多台远程计算机上工作,并且它们之间没有本地网络。 因此,我在互联网上搜索了大量的C#UDP客户机/服务器示例,如图所示 但是我没有找到如何在远程计算机上通过internet发送UDP套接字的方法,比如说IP=“130.204.159.205” 请根据您的答案给我一些示例代码您链接的示例显示,只需删除行IPHostEntry ipHostInfo=Dns.Resolve(Dns.GetHostName()),然后使用并传入一个ip地址为

我正在尝试创建一个服务器/客户机应用程序,该应用程序将在两台或多台远程计算机上工作,并且它们之间没有本地网络。 因此,我在互联网上搜索了大量的C#UDP客户机/服务器示例,如图所示

但是我没有找到如何在远程计算机上通过internet发送UDP套接字的方法,比如说IP=“130.204.159.205”


请根据您的答案给我一些示例代码

您链接的示例显示,只需删除行
IPHostEntry ipHostInfo=Dns.Resolve(Dns.GetHostName())
,然后使用并传入一个ip地址为130.204.159.205的字节数组

(...)
// Connect to a remote device.
try {
    // Establish the remote endpoint for the socket.
    // This example uses port 11000 on the local computer.
    IPAddress ipAddress = new IPAddress(new byte[] { 130, 204, 159, 205});
    IPEndPoint remoteEP = new IPEndPoint(ipAddress,11000);
(...)

通过UDP发送文件与TCP没有太大区别。您使用的端口必须在接收计算机上打开,并且监听该端口的应用程序可以对接收到的数据执行操作。如果您有电缆/ADSL/DSL路由器,则可能是您正在使用,这意味着您的计算机的IP地址无法通过internet访问。如果这是真的,您将需要配置您的路由器,以允许UDP流量通过您选择的端口。(还有一些操作系统是普通用户帐户用来避免恶意软件窃取已知端口的。)