Oppure

Loading
26/03/08 16:58
Nitro
ciao a tutti.
Ho un problema nel mandare delle stringhe da un programma ad un'altro tramite la rete:praticamente la prima stringa che mando, arriva nell'altro computer e tutto va come deve andare, ma se ne mando un altra nn succede niente; io utilizzo questo codice per inviare una stringa:
Private Client As New TcpClient
Private NetStream As NetworkStream

'codice per connetterlo ad un indirizzo IP
Client.Connect("<IP>", 25)

'e nel click di un pulsante metto questo:
If Client.Connected Then
 NetStream = Client.GetStream
 stato.Text = "Connessione effettuata"
 Dim bite() As Byte = ASCII.GetBytes(testo.Text)
 NetStream.Write(bite, 0, bite.Length)
end if

e questo è il codice che uso per inviare le stringhe. Quest'altro codice:
Private client As New TcpClient
Private listen As TcpListener
Private stream As NetworkStream

'nell'evento load del form (form di apertura del programma)
listen = New TcpListener(25)
listen.Start()
controllo.Start()   'timer per il controllo di connessioni

'e nell'evento Tick del timer Controllo questo:
If listen.Pending Then
   controllo.Stop()
   client = listen.AcceptTcpClient
   stream = client.GetStream
   listen.Stop()
 If stream.CanRead Then
  Dim bite(client.ReceiveBufferSize) As Byte
  Dim msg As String
  stream.Read(bite, 0, bite.Length)
  msg = ASCII.GetString(bite)
  textbox1.Text &= msg.Normalize
 End If
 listen.Start()
 controllo.Start()
End If

È il codice per ricevere e mettere in una textbox la stringa inviata.
Come mai la prima stringa che invio riesco a inviarla e a riceverla per visualizzarla, ma se ne invio altre non succede niente???
grazie molte per l'aiuto perchè è da un pomeriggio che cerco di risolvere senza alcun risultato buono.:D
aaa
27/03/08 15:46
Il Totem
Perchè la stringa viene letta solo quando Pending restituisce True (infatti hai messo due If nidificati). Questo evento si verifica solo alla connessione del client, e quindi solo alla prima volta. Devi separare il secondo If e metterlo in un altro timer.
aaa
27/03/08 16:14
Nitro
Ok ora provo.
Ti ringrazio molto, era importante:D
ciao:k:
aaa