-------------------------------
Réponse au message :
-------------------------------
> plein d'erreurs dans ce code !!
>
> je suppose que ce code est situé dans le DataArrival de ton controle Socket.
>
> dans ce cas, ne met pas
>
> SocketLocal(Index).GetData data, vbString, 20000000
>
> mais bien
>
> SocketLocal(Index).GetData data, vbString, bytestotal
>
>
> deuxiemement, tu cree un tableau de string, avec split. d'accord !!
> dans ce cas, dimensionne col comme tel !!
>
>
> Dim Col() as string
>
>
> au passage,
>
>
> chr(13) & chr(10)
>
>
> equivaut à
>
>
> vbcrlf
>
>
> ensuite, tu fait un for each text in col
>
> qui donnerais successivement chacune des valeurs du tableau a text, s'il s'agissait d'un tableau de Variant.
>
> on comprends donc mal la ligne qui suit :
>
>
> text = col(i)
>
>
> puisque i n'existe pas, et que text aurait été affecté.
>
>
> dim i as long
> for i = 0 to ubound ( col ) -1
> text =col(i)
>
>
> Ubound ( TABLEAU ) donnant le nombre d'elements du tableau....
>
> pour conclure, je dirait que tu devrait placer Option Explicit en haut de tes modules (ou cocher l'option dans les options, ca t'eviterais bien des soucis !! (obligation de declarer les variables )
>
>
> By Renfield
>
> [mailto:thomas_reynald@msn.com mailto:thomas_reynald@msn.com]
>
> Aucune touche n'a été blessée lors de la saisie de ce texte.......... ;)
> j'aim mis ma procédure à jours:pas de changement, sa marche pas!
J'ai un probème avec la procédure suivante :
la boucle ne démarre pas et la procédure arrête. Pourquoi?
Private Sub SocketLocal_DataArrival(Index As Integer, ByVal bytesTotal As Long)
Dim data As String, Texte, Assemblage As String, Host As String, first As Boolean, Fichier As String
SocketLocal(Index).GetData data, vbString, bytesTotal
log.Text = log.Text & Now & vbCrLf & "Demande de " & SocketLocal(Index).RemoteHostIP & vbCrLf & data & vbCrLf
Dim Col() As String
Col = Split(data, Chr(13) & Chr(10))
Dim i As Long
For i = 0 To UBound(Col) - 1
Texte = Col(i)
MsgBox "debut"If first False Then: Fichier Texte: Texte = Empty: first = True
If Left(Texte, 16) = "Proxy-Connection" Then
MsgBox "proxy"
Else
If Left(Texte, 5) = "Host:" Then
MsgBox "host"
Host = Right(Texte, Len(Texte) - 6)
Fichier = Replace(Fichier, "http://" & Host, vbNullString)
End If
If Trim$(Texte) = Empty Then
MsgBox "<vide>"
Else
MsgBox Texte
Assemblage = Assemblage & Texte & Chr(13) & Chr(10)
End If
End If
Next
MsgBox "fini"
Assemblage = Fichier & Chr(13) & Chr(10) & Assemblage
MsgBox Assemblage
SeConnecter Host, Index, Assemblage
End Sub