Avatar billede simonth Nybegynder
08. august 2007 - 20:01 Der er 1 kommentar og
1 løsning

Gør noget når der kommer data - Sockets

Hej,

Jeg har følgende kode:

Public Class Form1

    Dim tcpClient As New System.Net.Sockets.TcpClient
    Dim networkStream As NetworkStream

    Private Sub Forbind_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Forbind.Click
        tcpClient.Connect("127.0.0.1", 6667)
        networkStream = tcpClient.GetStream()
        If networkStream.CanWrite And networkStream.CanRead Then

        Else
            If Not networkStream.CanRead Then
                ModtagetDataRTB.AppendText("cannot not write data to this stream")
                tcpClient.Close()
            Else
                If Not networkStream.CanWrite Then
                    ModtagetDataRTB.AppendText("cannot read data from this stream")
                    tcpClient.Close()
                End If
            End If
        End If


    End Sub

End Class


Hvordan gør jeg så at når der kommer indgående data så skal den gøre et eller andet?(f.eks. bare en msgbox)
Det skal ikke være med en timer.

Jeg har følgende kode til at "hente" dataene:

Dim bytes(tcpClient.ReceiveBufferSize) As Byte
networkStream.Read(bytes, 0, CInt(tcpClient.ReceiveBufferSize))

Dim returndata As String = Encoding.ASCII.GetString(bytes)
MsgBox(("Data modtaget: " + returndata))
Avatar billede simonth Nybegynder
08. august 2007 - 21:40 #1
Pointene er sat op til 200, i håb om hurtigere svar.
Avatar billede thomaxz Nybegynder
09. august 2007 - 09:36 #2
Hvis det skal gøres uden time og while løkker, vil jeg nok bruge asynkront læsning, som i praksik fungere som en event.

har kun fundet et c# eksmepel

http://www.csharphelp.com/archives/archive239.html

og et vb.net eksempel

http://www.codeproject.com/vb/net/TcpClientMsnProtocol.asp
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester