UDPでエラー(40006)の対処方法

解決


グラフ  2007-06-08 20:59:15  No: 136649

いつもお世話になります。
グラフです。

ピクチャボックスの解像度?を良くする方法
http://madia.world.coocan.jp/cgi-bin/VBBBS2/wwwlng.cgi?print+200706/07060013.txt
を質問中ですが、こちらの方が重要度があがってしまったので、
2つになりますが、質問させてください。
尚、ピクチャボックスの方はテスト中です。

環境はいつもと同じくWinXP VB6SP6 です。

今回はUDPで通信をかけようとしています。
そこで、エラー(40006)が発生してしまいます。

コードの抜粋は
protocolプロパティの設定
LocalPortプロパティの設定
RemoteHostプロパティの設定
RemotePortプロパティの設定
SendDataメソッド
としていて、
これは、VB6のCDに付属しているMSDNを参照しました。
エラーは、SendDataメソッドで発生しています。

自分で調べた結果、
ソケットがオープン状態になっているのがいけないと判断し、
UDPでは、ナンセンスなことですが、
SendDataメソッド
の前に
Closeメソッドを入れてみましたが、
やはり、エラーは発生してしまいます。

ご助言。ご教授いただけたらと思います。


我龍院  2007-06-09 00:37:57  No: 136650

Bind メソッドは?


グラフ  2007-06-09 01:36:32  No: 136651

Bindメソッドは使用していません。
使用する必要はありますでしょうか?

以下が、試行錯誤の現状です。

protocolプロパティの設定
LocalPortプロパティの設定
RemoteHostプロパティの設定
RemotePortプロパティの設定
Connectメソッド ← 追加
SendDataメソッド
で、時々、動くようになりました。
が正しいのかわかりません。

Connectメソッドで、時々、
Winsockのエラーイベントが出てたので、
Winsockのエラーイベント内で、
Connectメソッドを発行し、
自動にリトライするようにしたところ、
Winsockのエラーイベント自体が、
発生しなくなってしまいました。


我龍院  2007-06-09 02:25:08  No: 136652

Winsockを使用して、UDPプロトコルで通信するんですよね。
MSDNの『Winsock (Winsock) コントロールの使い方』をもう一度御覧下さい。
特に『UDP の基礎』を。


グラフ  2007-06-09 08:48:17  No: 136653

返信ありがとうございます。

protocolプロパティの設定
LocalPortプロパティの設定
RemoteHostプロパティの設定
RemotePortプロパティの設定
Bindメソッド
SendDataメソッド
で、通信が可能になりました。

Openメソッド
Closeメソッド
は必要なかったです。

以上、ありがとうございました。


※返信する前に利用規約をご確認ください。




  


  このエントリーをはてなブックマークに追加