2017-08-16 27 views
-1

私は数式1のゲームのためのウェブサイトのようなダッシュボードを構築しています。 私はこれに続いてguideです。C# - UDP SocketException - アプリケーション間の競合

基本的に、ゲームはUDPを使用して127.0.0.1:20777でパケットを送信し、私のアプリでこれらのパケットを受信しようとしています。

私の問題は、パケットを受信しようとすると、ゲームと私のアプリケーションの間に何らかの矛盾があるようです。たとえば、ゲームが実行されていないときにアプリをコンパイルすると、コンパイルは正常に行われますが、もちろんデータは受信されません。

ゲームが開始されたら、コンパイルできず、「各ソケットアドレス(プロトコル/ネットワークアドレス/ポート)の1つだけが通常許可されています」というSocketExceptionが発生します。

私は次のことを試してみました:

UdpClient client = new UdpClient(20777);

UdpClient client = new UdpClient(); IpEndPoint ip = new IpEndPoint(IpAdress.Any, 20777); client.Connect(ip);

最初のソリューションは、 "...一つだけの使用" をスローし、そして第二の溶液は、「要求されたアドレスをスローしますそのコンテキストでは有効ではありません "。私はUDPに非常に慣れているので、何が間違っているのか、それをどう修正するのかは分かりません。

ありがとうございます!

答えて

0

私は、接続しようとするよりも、ポート20777でリッスンしようとしているはずです。 、私は家に今夜を得るとき、私はそれに打撃を与えるだろうおかげ

var client = new UdpClient(); 
IPEndPoint ep = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 20777); // endpoint where server is listening 
client.Connect(ep); 

// then receive data 
var receivedData = client.Receive(ref ep); 

Console.Write("receive data from " + ep.ToString()); 

Console.Read(); 
+0

は次のようなものかもしれません! – JetPrime

関連する問題