Je réalise une application de chat .NET mais j'ai toujours cette erreur: Je ne peux envoyer qu'un message par connexion. Par exemple. Avec le code ci-dessous, je peux envoyer seulement un message qui peut être reçu correctement par l'autre pair, mais si j'envoie un autre message de message, sur la même connexion, il ne sera pas reçu par le PC à distance. Voici le code:Problèmes Envoi de messages avec TCPClient dans vb.net
Dim client_TCP As New TcpClient
Private Sub send_obj(ByVal obj As Object)
Dim bf As New BinaryFormatter
Dim tosend As Packet
tosend.data = obj
bf.Serialize(client_TCP.GetStream(), tosend)
client_TCP.GetStream.Flush()
End Sub
Private Sub connect_to_port()
Try
client_TCP = New TcpClient(client_data.getIP(), client_data.getPort())
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
Private Sub disconnect_from_port()
client_TCP.Close()
End Sub
Et est ici l'auditeur:
Private Sub Timer_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles timer.Tick
If client_TCP_listener.Pending = True Then
....
End If
End Sub
Ainsi, pour envoyer un message que je toujours besoin de le faire (par exemple):
Dim b As Byte
b = 1
disconnect_from_port()
connect_to_port()
client_TCP.GetStream().WriteByte(b)
client_TCP.GetStream().Flush()
I essayé de mettre \ supprimer le flush à la fois le code. Rien ne s'est passé. Avez-vous des idées ?!