Problème buffer tcplistener [Résolu]

Signaler
Messages postés
157
Date d'inscription
dimanche 18 avril 2004
Statut
Membre
Dernière intervention
25 juillet 2018
-
Messages postés
157
Date d'inscription
dimanche 18 avril 2004
Statut
Membre
Dernière intervention
25 juillet 2018
-
Bonjour, j'ai un problème au niveau de tcplistener/client (encore)

C'est au niveau du buffer à la lecture des données :

Dim Stream As NetworkStream = objClient.GetStream
Dim bytes(objClient.ReceiveBufferSize) As Byte
Dim Read As Byte = Stream.Read(bytes, 0, CInt(objClient.ReceiveBufferSize))
Dim Recu As String = Encoding.UTF8.GetString(bytes, 0, bytes.Length)


Le ReceiveBufferSize est réglé à 8192 octets et j'envoi un paquet de 712 octet et j'ai l'erreur suivante :
L'opération arithmétique a provoqué un dépassement de capacité.

Ors se n'est pas possible que je dépasse le buffer vue qu'il est réglé a 8192 octets et j'en envoi que 712 (vérifier avec un msgbox + .lenght lors de l'envoi) :

Dim Stream As NetworkStream = objClient.GetStream
Stream.Write(donnees, 0, donnees.Length)
MsgBox(donnees.Length)

5 réponses

Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
227
Dim Read As Byte

Normalement Read doit retourner 712 octets

Tapez le texte de l'url ici.
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
Messages postés
14723
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
17 septembre 2020
144
Bonjour,

Sur quelle ligne l'erreur ?

Si c'est sur :
Dim Read As Byte = Stream.Read(bytes, 0, CInt(objClient.ReceiveBufferSize))

Read retourne un Byte ?

Actives Option Strict (propriétés du projet).

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, ce lien ou encore celui-ci[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
227
Bonjour,
et ce n'est pas du VB6


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
Messages postés
157
Date d'inscription
dimanche 18 avril 2004
Statut
Membre
Dernière intervention
25 juillet 2018
3
Bonjour,

oui sur cette ligne :

Dim Read As Byte = Stream.Read(bytes, 0, CInt(objClient.ReceiveBufferSize))

Normalement Read doit retourner 712 octets (se que j'envoi) mais sa ne passe pas au dessus de 100 octets...
Messages postés
157
Date d'inscription
dimanche 18 avril 2004
Statut
Membre
Dernière intervention
25 juillet 2018
3
Merci, certaine chose des plus basique que j'ai oublié...

Merci pour se coup de pied au cul sa fait du bien de temps en temps