■ 現在のこのページの役立ち度:
表示されない場合こちらのリンクからもご覧になれます。
■ このページの役立ち度を評価する:
役立ち度を評価してください。
(1(左):あまり役立たない - 5(右):大変役立った):
■ ページの共有:
[ サイト内検索 ]
カスタム検索
#2443-3Winsockについて教えてくださいはまちん2001-12-05(水) 05:03
     #2448-2RE#2443:Winsockについて教えてください高架の藤2001-12-05(水) 05:32
     #2455-2RE#2448:Winsockについて教えてくださいはまちん2001-12-05(水) 06:02
     #2456-2RE#2455:Winsockについて教えてください魔界の仮面弁士2001-12-05(水) 06:16
     #2448-0RE#2443:Winsockについて教えてください高架の藤2001-12-05(水) 14:32
     #2455-0RE#2448:Winsockについて教えてくださいはまちん2001-12-05(水) 15:02
     #2456-0RE#2455:Winsockについて教えてください魔界の仮面弁士2001-12-05(水) 15:16
#2443-3
Winsockについて教えてください
Winsockにて通信させるソフトを開発中なのですが、
クライアント側からConnectを行なっても
サーバー側のリクエストイベントが発生しません。

やり方は、まずサーバー側のアプリを立ち上げて
ボタンを押しListenで通信を開始。
その後Stateが"2"接続待機中なのを確認します。

次にクライアント側を立ち上げて
ボタンを押しサーバーIPしてい後に
Connectで接続します。

このときサーバー側でConnectionRequestイベントが
発生するはずなのですが・・・

下にソースを記述しますのでおかしな点があれば教えてください。
お願いします。

サーバー側
################################################################
Private Sub Command1_Click()

Winsock1.Listen
Label1.Caption = Winsock1.LocalHostName
Label2.Caption = Winsock1.LocalIP
Label3.Caption = Winsock1.LocalPort
Label4.Caption = Winsock1.State
Command1.Caption = "接続待機中"
Command1.Enabled = False

End Sub

Private Sub WinsockTCP_ConnectionRequest_(requestID As Long)

If Winsock1.State <> sckClosed Then Winsock1.Close
Winsock1.Accept requestID
Label5.Caption = Winsock1.RemoteHost
Label6.Caption = Winsock1.RemoteHostIP
Label7.Caption = Winsock1.RemotePort
Command1.Caption = "接続完了"
Command1.Enabled = True

End Sub
################################################################

クライアント側
################################################################
Private Sub Command1_Click()

Winsock1.RemoteHost = xxx.xxx.xxx.xxx
Winsock1.RemotePort = 80
Winsock1.Connect

End Sub
################################################################
#2448-2
RE#2443:Winsockについて教えてください
> Winsockにて通信させるソフトを開発中なのですが、
Winsockはよく分かりませんが、取り敢えず気になった点。

> Winsock1.Listen
コントロール名が「Winsock1」なのに、

> Private Sub WinsockTCP_ConnectionRequest_(requestID As Long)
コントロール名「WinsockTCP」のイベントを見ている。

ついでに、「ConnectionRequest_」と最後に余分な「_」までついている・・・
#2455-2
RE#2448:Winsockについて教えてください
ありがとうございます。
ヘルプを参照して、いろいろやるうちに"接続完了"することが出来ました。

> コントロール名が「Winsock1」なのに、
> コントロール名「WinsockTCP」のイベントを見ている。
ヘルプのソースをそのまま使った為です。なさけない間違いです。

> ついでに、「ConnectionRequest_」と最後に余分な「_」までついている・・・
「ConnectionRequest _」のアンダーバーは必要のようです。
ただ、「t _」と空白はさまなければならないのでしょうか??
もうひとつ、()部は改行しなければいけないのでしょうか??
まだまだ謎だらけです。

修正後のソース(受信部分)
Private Sub Winsock1_ConnectionRequest _
(ByVal RequestID As Long)

If Winsock1.State <> sckClosed Then Winsock1.Close
Winsock1.Accept RequestID

End Sub
#2456-2
RE#2455:Winsockについて教えてください
>> ついでに、「ConnectionRequest_」と最後に余分な「_」までついている・・・
> 「ConnectionRequest _」のアンダーバーは必要のようです。
> ただ、「t _」と空白はさまなければならないのでしょうか??
> もうひとつ、()部は改行しなければいけないのでしょうか??

空白+アンダースコア、すなわち「 _」で一つのキーワードなのです。

これは、長い文を分割するときに使われる記号で、「行継続文字」と呼ばれています。
ヘルプで 行継続文字 について調べてみましょう。
http://www.asia.microsoft.com/japan/developer/library/vbcon98/vbconcodebasics.htm
#2448-0
RE#2443:Winsockについて教えてください
> Winsockにて通信させるソフトを開発中なのですが、
Winsockはよく分かりませんが、取り敢えず気になった点。

> Winsock1.Listen
コントロール名が「Winsock1」なのに、

> Private Sub WinsockTCP_ConnectionRequest_(requestID As Long)
コントロール名「WinsockTCP」のイベントを見ている。

ついでに、「ConnectionRequest_」と最後に余分な「_」までついている・・・
#2455-0
RE#2448:Winsockについて教えてください
ありがとうございます。
ヘルプを参照して、いろいろやるうちに"接続完了"することが出来ました。

> コントロール名が「Winsock1」なのに、
> コントロール名「WinsockTCP」のイベントを見ている。
ヘルプのソースをそのまま使った為です。なさけない間違いです。

> ついでに、「ConnectionRequest_」と最後に余分な「_」までついている・・・
「ConnectionRequest _」のアンダーバーは必要のようです。
ただ、「t _」と空白はさまなければならないのでしょうか??
もうひとつ、()部は改行しなければいけないのでしょうか??
まだまだ謎だらけです。

修正後のソース(受信部分)
Private Sub Winsock1_ConnectionRequest _
(ByVal RequestID As Long)

If Winsock1.State <> sckClosed Then Winsock1.Close
Winsock1.Accept RequestID

End Sub
#2456-0
RE#2455:Winsockについて教えてください
>> ついでに、「ConnectionRequest_」と最後に余分な「_」までついている・・・
> 「ConnectionRequest _」のアンダーバーは必要のようです。
> ただ、「t _」と空白はさまなければならないのでしょうか??
> もうひとつ、()部は改行しなければいけないのでしょうか??

空白+アンダースコア、すなわち「 _」で一つのキーワードなのです。

これは、長い文を分割するときに使われる記号で、「行継続文字」と呼ばれています。
ヘルプで 行継続文字 について調べてみましょう。
http://www.asia.microsoft.com/japan/developer/library/vbcon98/vbconcodebasics.htm
このページと関連する記事:
#2443-0Winsockについて教えてください2001-12-05(水) 14:03
#23893-0VB5でWinsockを・・・2001-10-22(月) 13:44
#33369-0Winsockで窒息中2000-11-13(月) 15:59
#242-2Winsockが通信しない2001-10-19(金) 09:21
#17314-0Winsock について2000-03-02(木) 10:45
#242-0Winsockが通信しない2001-10-19(金) 18:21
#8367-0Winsockで一対一の接続ではなく一対多の接続をしたいのですが・・・。2000-05-29(月) 19:26
#1265-2ソケット通信2001-11-09(金) 02:11
#18000-0WinsockコントロールのConnectでエラー2000-03-15(水) 18:50
#32391-0LAN、TCP/IPでのメッセ−ジ機能2000-10-24(火) 19:57
お探しの情報は見つかりましたか?お困りの問題は解決しましたか?
サイト内検索, 似た記事検索で見つからなくてもあきらめずに掲示板で質問してみましょう。
VB初心者友の会があなたのお役に立てれば幸いです。また、本ページの投稿者の方々にこの場を借りて感謝致します。
本ページは過去ログを集めて自動構成しています。よろしければこのページに関するフィードバックをお願いします。
(※ 構成の誤り、広告等の不適切な記事、リンク切れ、読めないページの報告など)