Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Bug, dépassement des capacités... MAIS POURQUOI?!?!? [ Archives Visual Basic / J'AI BESOIN D'AIDE !!!! :) ] (faiseurdesonges)

dimanche 17 août 2003 à 15:25:40 | Bug, dépassement des capacités... MAIS POURQUOI?!?!?

faiseurdesonges

voila c juste un robo archiveur sur irc tout semble bien marcher ... lorsqu'il reçoit un 'ping', il renvoit un 'pong', jusque là tout semble normal. Ce pong il le note aussi dans sa fenêtre d'état (text1). Le hic est que au bout de x minutes où il est resté connecté il pète un cable et plante suite à un dit 'dépassement des capacités'... la ligne de code mise en cause est celle ci:

Text1.Text = Text1.Text & vbCrLf & "--------------" & vbCrLf & ">" & chaine

mais je ne comprends pas où il peut y avoir eu un dépassement des capacités.... (text1 étant remis à zeros si il devient trop imposant..)
Vous n'avez pas une idée?

Sinon voici le modul en entier:

Public Sub IRCSend(chaine As String)
'on envoie une chaine au serveur mais on l'affiche aussi !
Winsock1.SendData chaine & vbCrLf
If Len(Text1.Text) > 80000 Then Text1.Text = ""
Text1.Text = Text1.Text & vbCrLf & "--------------" & vbCrLf & ">" & chaine
End Sub

mici d'avance ^^

dimanche 17 août 2003 à 16:03:19 | Re : Bug, dépassement des capacités... MAIS POURQUOI?!?!?

neodante

Administrateur CodeS-SourceS

Neodante

En effet une chaine de caractères peut contenir plus de 2 milliards de caractères mais est-tu sure que ce n'est pas le SendData qui fait la grouille ???
@+

dimanche 17 août 2003 à 16:47:08 | Re : Bug, dépassement des capacités... MAIS POURQUOI?!?!?

neodante

Administrateur CodeS-SourceS

Neodante

D'après la documentation MSDN la fonction Len renvoit un Long mais en fait si tu fais une boucle de 80000 et que tu demandes la taille avec Len, la valeur ne dépasse pas 35565 !!!
Si ça peut t'aider

dimanche 17 août 2003 à 17:54:01 | Re : Bug, dépassement des capacités... MAIS POURQUOI?!?!?

Anthomicro


mail : jeanpierre.rossetto@club-internet.fr



-------------------------------
Réponse au message :
-------------------------------

> voila c juste un robo archiveur sur irc tout semble bien marcher ... lorsqu'il reçoit un 'ping', il renvoit un 'pong', jusque là tout semble normal. Ce pong il le note aussi dans sa fenêtre d'état (text1). Le hic est que au bout de x minutes où il est resté connecté il pète un cable et plante suite à un dit 'dépassement des capacités'... la ligne de code mise en cause est celle ci:
>
> Text1.Text = Text1.Text & vbCrLf & "--------------" & vbCrLf & ">" & chaine
>
> mais je ne comprends pas où il peut y avoir eu un dépassement des capacités.... (text1 étant remis à zeros si il devient trop imposant..)
> Vous n'avez pas une idée?
>
> Sinon voici le modul en entier:
>
> Public Sub IRCSend(chaine As String)
> 'on envoie une chaine au serveur mais on l'affiche aussi !
> Winsock1.SendData chaine & vbCrLf
> If Len(Text1.Text) > 80000 Then Text1.Text = ""
> Text1.Text = Text1.Text & vbCrLf & "--------------" & vbCrLf & ">" & chaine
> End Sub
>
> mici d'avance ^^

dimanche 17 août 2003 à 17:54:34 | Re : Bug, dépassement des capacités... MAIS POURQUOI?!?!?

Anthomicro

oups désolé !
mail : jeanpierre.rossetto@club-internet.fr



-------------------------------
Réponse au message :
-------------------------------

>
> mail : jeanpierre.rossetto@club-internet.fr
>
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > voila c juste un robo archiveur sur irc tout semble bien marcher ... lorsqu'il reçoit un 'ping', il renvoit un 'pong', jusque là tout semble normal. Ce pong il le note aussi dans sa fenêtre d'état (text1). Le hic est que au bout de x minutes où il est resté connecté il pète un cable et plante suite à un dit 'dépassement des capacités'... la ligne de code mise en cause est celle ci:
> >
> > Text1.Text = Text1.Text & vbCrLf & "--------------" & vbCrLf & ">" & chaine
> >
> > mais je ne comprends pas où il peut y avoir eu un dépassement des capacités.... (text1 étant remis à zeros si il devient trop imposant..)
> > Vous n'avez pas une idée?
> >
> > Sinon voici le modul en entier:
> >
> > Public Sub IRCSend(chaine As String)
> > 'on envoie une chaine au serveur mais on l'affiche aussi !
> > Winsock1.SendData chaine & vbCrLf
> > If Len(Text1.Text) > 80000 Then Text1.Text = ""
> > Text1.Text = Text1.Text & vbCrLf & "--------------" & vbCrLf & ">" & chaine
> > End Sub
> >
> > mici d'avance ^^
>

dimanche 17 août 2003 à 19:14:42 | Re : Bug, dépassement des capacités... MAIS POURQUOI?!?!?

faiseurdesonges


mmh oki donc le nettoyage du text1 ne se fera jamais....
mais je comprends quand même pas car j'ai pas dépassé le millard avant que ça bug :P

quand à l ligne qui bug c celle que vb6 me pointe lorsque ça plante dans l'éxecution.... (erreur numéros -9 je crois.... mais vais vérrifier (bref laisser tourner le prog une heure -_- ) )

mici :-)

-------------------------------
Réponse au message :
-------------------------------

>
> Neodante
>
> En effet une chaine de caractères peut contenir plus de 2 milliards de caractères mais est-tu sure que ce n'est pas le SendData qui fait la grouille ???
> @+

dimanche 17 août 2003 à 19:32:48 | Re : Bug, dépassement des capacités... MAIS POURQUOI?!?!?

faiseurdesonges

Vala l'erreur exacte c'est:

"run-time error '7':
out of memory"

sur irc évidement il plante puisqu'il ne renvoit plus les ping

et la ligne encause est


Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim chaine As String

Winsock1.GetData chaine
If Len(Text1.Text) > 50000 Then Text1.Text = ""

---> Text1.Text = Text1.Text & vbCrLf & "--------------" & vbCrLf & Mid(chaine, 1, Len(chaine) - 2) <----

CheckLine chaine
End Sub





-------------------------------
Réponse au message :
-------------------------------

>
> mmh oki donc le nettoyage du text1 ne se fera jamais....
> mais je comprends quand même pas car j'ai pas dépassé le millard avant que ça bug :P
>
> quand à l ligne qui bug c celle que vb6 me pointe lorsque ça plante dans l'éxecution.... (erreur numéros -9 je crois.... mais vais vérrifier (bref laisser tourner le prog une heure -_- ) )
>
> mici :-)
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> >
> > Neodante
> >
> > En effet une chaine de caractères peut contenir plus de 2 milliards de caractères mais est-tu sure que ce n'est pas le SendData qui fait la grouille ???
> > @+
>

lundi 18 août 2003 à 01:20:41 | Re : Bug, dépassement des capacités... MAIS POURQUOI?!?!?

Proger

Probablement car tu reçois bcp trop d'info en provenance du socket, et comme tu utilise l'objet text1 pour cumuler l'ancien résultat, y dois y avoir un problème de pile...
enfin bref, essaye plutôt ce code :

Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim chaine As String
Dim TempS As String

Winsock1.GetData chaine

If Len(Text1.Text) > 50000 Then Text1.Text = ""
TempS = Text1.Text & vbCrLf & "--------------" & vbCrLf & Mid(chaine, 1, Len(chaine) - 2)
Text1.Text = TempS
CheckLine chaine
End Sub

c'est bizarre mais j'ai l'impression que ça servira a rien... Si c'est le cas, vire la ligne qui teste si len(text1)>50000 ainsi que text1.text = temps en la remplaçant par
Text1.Text = Right$(Temps, 50000)

lundi 18 août 2003 à 07:51:39 | Re : Bug, dépassement des capacités... MAIS POURQUOI?!?!?

faiseurdesonges


ça n'a pas l'air de changer grand choses.... mais j'ai abaissé la limite à 35565, comme on me l'a fait remarqué plus haut et il n'a pas planté de la nuit c'était peut être ça... :-)
je viens de le démarrer avec ''Text1.Text = Right$(Temps, 50000)'' ça risque fort de marcher aussi :-)
(bête limite à la valeur de 'len')

en tout cas merci les gars ^^


-------------------------------
Réponse au message :
-------------------------------

> Probablement car tu reçois bcp trop d'info en provenance du socket, et comme tu utilise l'objet text1 pour cumuler l'ancien résultat, y dois y avoir un problème de pile...
> enfin bref, essaye plutôt ce code :
>
> Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
> Dim chaine As String
> Dim TempS As String
>
> Winsock1.GetData chaine
>
> If Len(Text1.Text) > 50000 Then Text1.Text = ""
> TempS = Text1.Text & vbCrLf & "--------------" & vbCrLf & Mid(chaine, 1, Len(chaine) - 2)
> Text1.Text = TempS
> CheckLine chaine
> End Sub
>
> c'est bizarre mais j'ai l'impression que ça servira a rien... Si c'est le cas, vire la ligne qui teste si len(text1)>50000 ainsi que text1.text = temps en la remplaçant par
> Text1.Text = Right$(Temps, 50000)



Cette discussion est classé dans : text, chaine, vbcrlf, text1, dépassement


Répondre à ce message

Sujets en rapport avec ce message

besoin d'une lumiere [ par Nestor ] salutj'ai un TextBox(1) en multiligne,(à la NotePad) et un autre TextBox(2) avec sont MaxLenght à 10 (non multiligne)Je voudrais que dans mon textbox( Utiliser les caractères ' et " dans une chaine !!! [ par Sly03 ] Salut tout le mondeAlors voila j'ai une text box Text1 qui peut contenir le texte suivant : Aujourd'hui , ou bien Personne "mal-aimée".Bref, avec des comment copier un winsock dans un groupe de winsock? [ par retaks666 ] voila, j'ai créer un chat, avec un groupe de winsock, et j'aimerai que lorque l'un d'eux se connecte, les index soi déplacés, qu'il n'y ai jamais d'in manipulation sur les textBox [ par tonitto85 ] Bonjour tous le mondej'ai un petit problème dans une application et j'espère que je trouve l'aide icije commance par donner ce programme et je vais co changer une chaine en expression [ par dede_1 ] bonjour j'aimerais changer une chaîne en expressionexemple text1.text="jje voudrais en suite faire un test du genre ce qu'il y a dans la textboxif jou faire décendre le scrollbar d'un webbrowser [ par Crash Ov ] je cherche a faire décendre une page dans un webbrowsercomme par exemple  dans un text box , un code du genre Text1.SelStart = Len(Text1.Text)help me erreur de code [ par yassine_imou ] Bonjour,je suis hyper super debutant en programmation, et je veux poser une petite question,Voila mon code et mon application.             le voila le Question language [ par vbnino ] Salut! -Quelle est la différence entre c'est deux code:1-  text1.text="x"2-  text1="x" -Pour moi "text1.text="x" , cela veux dire que je précise que c incrémenter une textbox [ par mistermik ] Bonjour,       Je suis débutant, voila mon problème : je cherche à incrémenter une textbox mais pas son contenu en fait je veus faire une boucle qui textbox multilignes (gros probleme) [ par titil64 ] Re bonjour a tous je reviens sur ce theme qui me prend terriblement la tete j'ai une textbox multiligne et je veux envoyer chaque ligne dans une autre


Nos sponsors

Sondage...

CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,218 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.