05/04/08 06:04:23
>691 レスありがとうございます!それでは現在テストで動いた以下の
スレッド方式でも、悪い方ではないと考えていいでしょうか?
Private Sock1 As New System.Net.Sockets.TcpClient
Private Stream As NetworkStream
Private myThread As Threading.Thread
-----ボタンクリック
Private Sub Button1_Click(~) Handles Button1.Click
Sock1.Connect("www.yahoo.co.jp", 80)
TextBox1.Text = ""
Stream = Sock1.GetStream()
Dim ByteSend As Byte() = System.Text.Encoding.ASCII.GetBytes("GET / HTTP/1.0" + vbCrLf + vbCrLf)
Stream.Write(ByteSend, 0, ByteSend.Length())
myThread = New Threading.Thread(AddressOf DataArrave)
myThread.Start()
End Sub
-----自作SUB
Private Sub DataArrave()
Dim ByteRead(2000) As Byte
Dim strText As String
Dim intLength As Integer
Dim lngRevcnt As Long
Dim lngRevByt As Long
Do
intLength = Stream.Read(ByteRead, 0, ByteRead.Length())
lngRevcnt += 1 : lngRevByt += CLng(intLength)
Me.Text = "受信パケット数:" & lngRevcnt & " (" & lngRevByt & " byte)"
strText += System.Text.Encoding.ASCII.GetString(ByteRead, 0, intLength)
If intLength < 1 Then Exit Do
Sock1.Close()
Loop
TextBox1.Text = strText
End Sub