DOBON.NET DOBON.NETプログラミング掲示板過去ログ

ソケット通信について

分類:[全般]

VB.netでTcpClientクラスを使用してソケット通信を行っているのですがサンプル等を見て試行錯誤しています。相手のマシンが接続を切断した時、接続を切断したいのですが方法が分かりません。VBのWinsockコントロールのCloseイベントはないのでしょうか?
教えて下さい。
■No245に返信(イルカさんの記事)
> VB.netでTcpClientクラスを使用してソケット通信を行っているのですがサンプル等を見て試行錯誤しています。相手のマシンが接続を切断した時、接続を切断したいのですが方法が分かりません。VBのWinsockコントロールのCloseイベントはないのでしょうか?

旧掲示板に同じ質問があります。2枚目のページにありました。

http://tcup7106.tripod.co.jp/dobon2/bbs

そこに書いたサンプルコードを下にCopyしておきます。

Dim objListener As System.Net.Sockets.TcpListener
objListener = New System.Net.Sockets.TcpListener(2001)
objListener.Start()

Dim objClient As System.Net.Sockets.Socket
objClient = objListener.AcceptSocket()
Console.WriteLine("クライアント接続")

Try
  Do
    Dim bytData(1024) As Byte
    Dim intLength As Integer
    intLength = objClient.Receive(bytData)
    If intLength = 0 Then
      Console.WriteLine("クライアントが切断")
      objClient.Close()
      Exit Do
    End If
    Console.WriteLine("データ受信")
    Console.WriteLine(System.Text.Encoding.ASCII.GetString( _
bytData, 0, intLength))
  Loop
Catch ex As Exception
  Console.WriteLine(ex.ToString())
  objClient.Close()
End Try

objListener.Stop()
お礼が遅れてすいませんでした。
早速試してみます。
ありがとうございました。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板