「UDPによりデータの送受信を行う」へのコメント https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html 「UDPによりデータの送受信を行う」に投稿されたコメントの一覧 ja https://dobon.net/banner/dbs1.gif https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html 「UDPによりデータの送受信を行う」へのコメント 88 31 通常のコメント https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#28 問題なく動きましたが、注意点として

Button2_Clickにある。
Button1.Enabled = False
は、他の方が指摘されていた通り不要、というかこれがあると
先に送信ボタンを押してしまうと、受信を始めることができません。

また、
Private udpClientR As System.Net.Sockets.UdpClient = Nothing
Private udpClientS As System.Net.Sockets.UdpClient = Nothing
といった感じで送受のクライアントを分けました。

さらに、送信するポートは、TextBoxで指定したポートではなく、任意のポートとなってしまうようですが、受信ポートはTextBoxの通りのため問題なく動作します。

このため、localhost内で通信する場合はポートによる送信者の区別ができませんが、
そのあたりは送信内容にコード上でテキストを付加するなどして何とでもなります。

シンプルでとても良いコードで大変参考になりました。
上記、皆様の参考になれば。]]>
Mon, 03 Jan 2022 22:35:26 +0900 https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#28
通常のコメント https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#27 受信用と送信用で同じUdpClientのインスタンスを使っていますが
送信時に相手が存在しない場合、受信待ちも「切断された」の例外で終了します
そのため、その後相手を起動しても相手からの送信を受信できません

対処として受信と送信で別のインスタンスを使った方がよさそうです]]>
Thu, 11 Mar 2021 17:13:33 +0900 https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#27
通常のコメント https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#26 Tue, 30 Jun 2020 04:38:17 +0900 https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#26 通常のコメント https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#25 Sun, 08 Mar 2020 16:23:19 +0900 https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#25 評価の理由 https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#24 突然UDP通信を行う案件が降って来たので、大変参考になりました。]]> Tue, 03 Sep 2019 10:40:29 +0900 https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#24 評価の理由 https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#23 大変参考になり、助かります。
ありがとうございます。]]>
Thu, 20 Sep 2018 18:19:37 +0900 https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#23
評価の理由 https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#22 これでチャットとか作った場合、通信内容ってもれちゃうけーですか?]]> Tue, 28 Aug 2018 01:11:44 +0900 https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#22 通常のコメント https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#21 Tue, 27 Jun 2017 09:39:48 +0900 https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#21 通常のコメント https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#20 Tue, 27 Jun 2017 09:23:20 +0900 https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#20 通常のコメント https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#19  このサンプルプログラムを使って連続で数百Kバイトのデータを送信すると通信がロックする事があります。1回のBeginSendに対して複数のコールバックがある場合があり、その場合にロックするのですが、2回目以降のコールバックがあった時にダミーでBeginSend関数を実行すると解決します。]]> Tue, 28 Mar 2017 15:31:54 +0900 https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#19 通常のコメント https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#18 udp.Client.DualMode = true; でも行けますね。]]> Wed, 21 Dec 2016 18:04:30 +0900 https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#18 通常のコメント https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#17
おっしゃる通りで、それでもかまいません。サンプルは、コールバックメソッドにオブジェクトを渡す例だと思ってください。]]>
Wed, 24 Jun 2015 00:49:24 +0900 https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#17
通常のコメント https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#16 そして各コールバックメソッドとも引数のIAsyncResultからUdpClientクラスのインスタンスをキャストで取得しています。

このキャストによるUdpClientクラスのインスタンス取得処理は必ずこうでないと(わざわざキャストしないと)駄目なのでしょうか?

素人考えだと、メンバ変数でudpClientを宣言しているのだからそのままそれを使えばいいのかな~?などと思っているのですが、実は引数のインスタンスをキャストして使う何らかの理由があったりするのでしょうか?長文ですみません。]]>
Mon, 01 Jun 2015 18:40:29 +0900 https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#16
評価の理由 https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#15 一応動くが受信だけはどうするのかが分からない。]]> Thu, 25 Jul 2013 17:08:06 +0900 https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#15 評価の理由 https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#14 クソ内容
MSDNを見ると現在はこのコードでは動作しないことがノートされています

自己解析能力とか言ってる奴は詐欺師もいいところ
動かないコードは動かない]]>
Mon, 11 Mar 2013 14:09:47 +0900 https://dobon.net/cgi-bin/pc/pc.php?mode=v&id=internet%2Fudpclient.html#14