Un altro problema mi aflligge la mia applicazione e questa volta non riesco proprio a venirne a capo.
Come avete visto basta un vostro suggerimento e mi attivo a trovare la soluzione finale.

Questa volta il problema e che non riesco a fare in modo che un server si accorge quando il client si disconnette e rimane poi pronto per lo scambio dei dati alla prossima riconnessione del client.

Infatti quando chiudo la mia applicazione client, e poi aprendola nuovamente mi riconnetto al server, non passa più i dati.
Ho provato tante cose ma non ho trovato nessuna soluzione fin ora.

Vi riporto un esempio di codice del server che descrive come sta funzionando.

codice:
tcpListen As New TcpListener(ip, porta)
tcpListen.Start()
tcpClient = tcpListen.AcceptTcpClient()
netStream = tcpClient.GetStream()

If tcpClient.Connected = True Then
Timer1.Enabled = True
End If
e questo è il codice del timer che controlla in ogni momento se vengono passati dei dati

codice:
If netStream.DataAvailable = True Then

Dim dato(tcpClient.ReceiveBufferSize()) As Byte

netStream.Read(dato, 0, dato.Length)        

end if
Quando io chiudo il client, vorrei che quando lo riapro e mi riconnetto al server, sia possibile inviare di nuovo i dati.
Qualche suggerimento???