Simpel Client-Server programma

Status
Niet open voor verdere reacties.

kabourterplop

Gebruiker
Lid geworden
25 feb 2007
Berichten
323
Tcp problemen

Goedemiddag,

Ik loop al een tijdje het internet af te zoeken om een simpel programmatje te maken die kunnen communiceren met elkaar (Server/Client). Nu zijn er op internet diverse dingen te vinden maar geen enkele kan ik aan de praat krijgen.

Ik kan al wel verbinding met de host maken maar ik kan geen teksten verzenden naar de host of client, ik ontvang helemaal niks. Wie kan mij hiermee helpen? Zie onderstaande code hoe ik het in elkaar heb gezet.

Server (Wachten op verbindingen, en verzenden van commando's)
Code:
    Sub listen()
        Dim LISTENING As Boolean
        Dim localhostAddress As IPAddress = Net.IPAddress.Parse(ipAddress.ToString)
        Dim port As Integer = 4001     '' PORT ADDRESS
        ''''''''''' making socket tcpList ''''''''''''''''
        Dim tcpList As New TcpListener(ipAddress, port)
        Try
            tcpList.Start()
            LISTENING = True
            Do While LISTENING
                Do While tcpList.Pending = False And LISTENING = True
                    Thread.Sleep(10)
                Loop
                Dim tcpCli As TcpClient = tcpList.AcceptTcpClient()
                Dim ns As NetworkStream = tcpCli.GetStream()
                Dim sr As New StreamReader(ns)
                ''''''''' get data from client '''''''''''''''
                Dim receivedData As String = sr.ReadLine()
                MsgBox(sr.ReadToEnd.ToString)
                If receivedData = "###CONNECT_V1.01_$DYA###" Then
                    ListView1.Items.Add(receivedData)
                End If
                Dim returnedData As String = "###OK###" '& " From Server"
                Dim sw As New StreamWriter(ns)
                sw.WriteLine(returnedData)
                sw.Flush()
                sr.Close()
                sw.Close()
            Loop
            tcpList.Stop()
        Catch ex As Exception
            MsgBox(ex.Message)
            LISTENING = False
        End Try
    End Sub

Client (Verbinding met server maken en tekst verzenden dat hij wil connecten, en wachten op instructies)
Code:
    Public Sub s()
        Dim host As String = TextBox1.Text
        Dim port As Integer = 4001
        Dim tcpCli As New TcpClient()
        tcpCli.Connect(host, port)
        Dim ns As NetworkStream = tcpCli.GetStream()
        'Dim sw As New StreamWriter(ns)
        Dim sendBytes As Byte() = Encoding.ASCII.GetBytes("###CONNECT_V1.01_$DYA###")
        Dim bytes1() As Byte = encoding.ascII.getbytes("###CONNECT_V1.01_$DYA###")
        ns.Write(sendBytes, 0, sendBytes.Length)
        ns.Close()

        Dim sr As New StreamReader(ns)
        Dim result As String = sr.ReadLine()
        If result = "###OK###" Then
            TextBox1.Enabled = False
            Button1.Enabled = False
            Me.ShowInTaskbar = False
            Me.Visible = False
        ElseIf result = "###EXIT_APP###" Then
            Dim pro As New Process
            pro.GetProcessesByName(result)
            pro.Kill()
        ElseIf result = "###EXIT_WINDOWS###" Then
            System.Diagnostics.Process.Start("Shutdown", "/s")
        End If
        sr.Close()
    End Sub
 
Laatst bewerkt:
Het probleem is dat ik wel kan verbinden met de server maar de tekst die ik verzonden heb niet aankomt.
 
volgens mij snappen mensen deze vraag nie helemaalll....:confused:
Ikke in ieder geval nie:p
 
Wat ik zo 1-2-3 kan zien is dat je je data zend met een Write, maar uitleest met een ReadLine. Mogelijk wordt er dus nog op een crlf gewacht
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan