Problème buffer tcplistener [Résolu]

Messages postés
158
Date d'inscription
dimanche 18 avril 2004
Statut
Membre
Dernière intervention
25 juillet 2018
- - Dernière réponse : Guillamue06
Messages postés
158
Date d'inscription
dimanche 18 avril 2004
Statut
Membre
Dernière intervention
25 juillet 2018
- 26 janv. 2012 à 21:08
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)
Afficher la suite 

5 réponses

Meilleure réponse
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
212
3
Merci
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

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 190 internautes nous ont dit merci ce mois-ci

Commenter la réponse de ucfoutu
Messages postés
14570
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
21 octobre 2019
136
0
Merci
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
---
Commenter la réponse de NHenry
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
212
0
Merci
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
Commenter la réponse de ucfoutu
Messages postés
158
Date d'inscription
dimanche 18 avril 2004
Statut
Membre
Dernière intervention
25 juillet 2018
3
0
Merci
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...
Commenter la réponse de Guillamue06
Messages postés
158
Date d'inscription
dimanche 18 avril 2004
Statut
Membre
Dernière intervention
25 juillet 2018
3
0
Merci
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
Commenter la réponse de Guillamue06