0

単純なデータ収集GUIをプログラムしようとしています。設定は次のとおりです。

一方では、データで満たされた単純なUDPパケットを送信するプログラムされたFPGAがあります。システムのこの部分は機能しています。検証済みであり、wiresharkで期待どおりにパケットが着信しているのを確認できます。

一方、私はパケットを収集してデータを表示するためにC#で単純な受信機を構築しようとしています。UDP通信で見つけられるすべてのことを試しましたが、GUIに実際にパケットを表示させることができないようです。

パケットは192.168.0.99:1024から192.168.0.100:1024に送信されています。

私のテストコードは次のとおりです。

private void ConnectToUDP(UDPOptions Options)
{
    UdpClient listener = new UdpClient(1024);
    IPEndPoint groupEP = new IPEndPoint(IPAddress.Any, 1024);

    while (true)
    {
         byte[] bytes = listener.Receive(ref groupEP);
    }
}

しかし、私はそれが最終行でブロックする以外に何もすることができないようです。(つまり、ブロックされますが、実際にデータを受信することはないようです。)

繰り返しになりますが、wiresharkで着信するパケットを確認できます。実際に着信パケットを確認するために、マシンのIPアドレスを192.168.0.100に設定していますが、プログラムはそれらを認識しません。

誰かが私が間違っていることを知っていますか?

ありがとう、イアン

4

1 に答える 1

0

これがまだ必要かどうか、またはこれが機能するかどうかはわかりませんが、@ INCyr、次のように IPEndPoint ポートを 1024 から 0 に変更してみてください。

IPEndPoint groupEP = new IPEndPoint(IPAddress.Any, 0);

これは私にとってはうまくいきました。

于 2013-01-22T08:03:49.413 に答える