動作しない非常に単純なことをしようとしています: C# アプリケーションでは、特定のポートで UDP パッケージをリッスンしたいだけです。Wireshark を使用すると、希望するパッケージが完全に問題なく受信されていることがよくわかります (CRC とすべて問題ありません)。
ただし、インターネットで見つけたコードはどれも機能しません。たとえば、これも失敗します。
private void ReceiveAsync()
{
UdpClient Client = new UdpClient(new IPEndPoint(IPAddress.Any, 51200));
try
{
Client.BeginReceive(new AsyncCallback(OnReceive), null);
}
catch (Exception e)
{
System.Windows.Forms.MessageBox.Show(e.Message);
}
}
private static void OnReceive(IAsyncResult result)
{
System.Windows.Forms.MessageBox.Show("Simply to tell you that something was received on the port");
}
2 つのイーサネット ネットワーク カードがインストールされています。多分これは問題になる可能性がありますか?しかし、IPアドレスを具体的に指定しても、何も変わりません。
UdpClient Client = new UdpClient(new IPEndPoint(IPAddress.Parse("10.0.0.2"), 51200));
この問題を解決できるアイデアがあれば、とてもうれしく思います。どうもありがとうございました!