VB Winsock DataArrival event

Fermé
Marco007 Messages postés 24 Date d'inscription jeudi 3 mai 2007 Statut Membre Dernière intervention 9 juin 2009 - 13 juin 2008 à 16:03
 froeliger - 2 déc. 2009 à 13:35
Bonjour,

j'utilise Visual Studio 2005 (VB).

Avec Winsock , lors d'un DATA_ARRIVAL event, j'affiche dans une texte box la donnée + sa taille.

J'ai bien la taille mais un blanc/rien/nada pour la donnée...

Des idée ? Voici le code :

Private Sub FrmTelnet_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

Winsck.LocalPort = 23
Label1.Text = "Local : " & Winsck.LocalHostName
LblIP.Text = Winsck.LocalIP
LblPort.Text = Winsck.LocalPort
Winsck.Listen()
End Sub

Private Sub Winsck_ConnectionRequest(ByVal sender As Object, ByVal e As AxMSWinsockLib.DMSWinsockControlEvents_ConnectionRequestEvent) Handles Winsck.ConnectionRequest

Winsck.Close()
Winsck.Accept(e.requestID)
End Sub

Private Sub Winsck_DataArrival(ByVal sender As Object, ByVal e As AxMSWinsockLib.DMSWinsockControlEvents_DataArrivalEvent) Handles Winsck.DataArrival

Dim StrData As String
StrData = ""

Winsck.GetData(StrData, vbString, e.bytesTotal)
TbxData.Text = StrData & " - " & e.bytesTotal
End Sub

Merci,
Marco
A voir également:

2 réponses

Désolé de vous répondre aussi tard, mais je viens seulement de tomber sur votre question.
Si vous avez encore besoin de la réponse, la voici :

Dans votre code, remplacez la ligne : TbxData.Text = StrData & " - " & e.bytesTotal
Par : TbxData.Text = TbxData.Text + StrData

C'est tout !

Explication : Telnet n'envoie qu'un seul caractère à la fois.

Denis FROELIGER
Professeur Cesi.Exia
1
Hohééé y a qlq'un pour m'aider ?

Merci,
Marco
0