Bonjour,
J'utilise le composant Microsoft winsock Control 6 pour une appli client / Serveur. C'est un système d'agents qui envoient des messages à un serveur. L'envoi des messages des agents vers le serveur se fait en UDP. Je sais que le protocole UDP ne donne pas de garantie de livraison, par contre, j'ai, par moment, paquets qui sont apparemment bien reçu sur le serveur quand je regarde le trafic réseau grâce à un tcpdump sur l'interface mais le prog VB semble ne pas les recevoir (pourtant je trace dans un fichier tout ce qui est reçu par ce prog sur la socket avant tout traitement). Avez-vous une idée du pb ? Est-il "normal" que certains paquets puissent arriver au niveau d'une interface et non récupéré par VB ?
Merci d'avance pour votre aide
Voici l'extrait de code VB qui effectue le traitement sur réception :
Private Sub Recv_data_DataArrival(ByVal bytesTotal As Long)
Dim strdata, suite, msgpret As String
Dim splt As Variant
Dim i As Integer
Dim NomFic As String
On Error GoTo ErrRecept
NomFic = App.Path & "/mestraces.log" & Format(Now(), "yyyymmdd")
If NomFic <> NomFicLog Then
NomFicLog = NomFic
Close (10)
Open NomFicLog For Append As #10
End If
Recv_data.GetData strdata, vbString
Print #10, strdata
suite = ""
Recv_data.GetData suite, vbString
strdata = strdata + suite
While suite <> ""
Print #10, suite
suite = ""
Recv_data.GetData suite, vbString
strdata = strdata + suite
Wend
..... (après je traite le buffer strdata)
Exit Sub
ErrRecept:
ajout_trace "Erreur Trt Message"
Exit Sub
End Sub