Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Visual Basic 6 - problema con winsock1.get data
Forum - Visual Basic 6 - problema con winsock1.get data

Pagine: [ 1 2 3 ] Precedente | Prossimo
Avatar
giusy_m86 (Normal User)
Pro


Messaggi: 143
Iscritto: 09/07/2008

Segnala al moderatore
Postato alle 15:23
Martedì, 22/07/2008
per poter inviare più stringhe come si fa?
es:
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
'LEGGE I DATI IN ARRIVO E LI VISUALIZZA
Dim imp96 As String
Winsock1.GetData imp96
txtImp96.Text = imp96
end sub

quando dichiaro altre stringhe nn arrivsnno, come devo fare?

PM Quote
Avatar
Overflow (Normal User)
Expert


Messaggi: 334
Iscritto: 11/01/2008

Segnala al moderatore
Postato alle 16:10
Martedì, 22/07/2008
Devi essere più chiara nell'esporre il problema, non si capisce cosa c'è che non va. Comunque posta il codice con il quale invii le stringhe.

Ultima modifica effettuata da Overflow il 22/07/2008 alle 16:10
PM Quote
Avatar
giusy_m86 (Normal User)
Pro


Messaggi: 143
Iscritto: 09/07/2008

Segnala al moderatore
Postato alle 16:20
Martedì, 22/07/2008
dal mio client voglio inviare alcune strighe al server...stavo fecendo una ricerca nel forum ed ho trovato questi esempi ma lo stesso nn funziona...


CLIENT:
Private Sub cmdInvia_Click()
'INVIA I DATI  SULLA SOCKET E CHIUDE LA CONNESSIONE
Dim Invia As String
Invia = txtImp96.Text
If Winsock2.State = sckConnected Then
Winsock2.SendData Invia
Call Sleep(500)
Invia = txtImp91.Text
Winsock2.SendData Invia
Call Sleep(500)
End If
End Sub



SERVER:
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
'LEGGE I DATI IN ARRIVO E LI VISUALIZZA
Dim ricevuto As String
Winsock1.GetData ricevuto
txtImp96.Text = ricevuto
Call Sleep(500)
Winsock1.GetData ricevuto
txtImp91.Text = ricevuto
Call Sleep(500)
End Sub


perchè sul server ricevo solo la prima stringa?

Ultima modifica effettuata da giusy_m86 il 22/07/2008 alle 17:31
PM Quote
Avatar
Overflow (Normal User)
Expert


Messaggi: 334
Iscritto: 11/01/2008

Segnala al moderatore
Postato alle 19:04
Martedì, 22/07/2008
sei sicura che ricevi solo la prima stringa? comunque nel client sostituisci sleep(500) con doevents.

PM Quote
Avatar
giusy_m86 (Normal User)
Pro


Messaggi: 143
Iscritto: 09/07/2008

Segnala al moderatore
Postato alle 14:39
Mercoledì, 23/07/2008
ho fatto la sostituzione, ma...sempre nn funziona.
in prtaica mettendo il doevents al posto dello sleep, ricevo la seconda stringa e nn la prima...:(

PM Quote
Avatar
gantonio (Normal User)
Guru^2


Messaggi: 1532
Iscritto: 09/09/2007

Segnala al moderatore
Postato alle 15:07
Mercoledì, 23/07/2008
Non devi usare l'evento di ricezione dei dati per ricevere piu' volte ...

PM Quote
Avatar
giusy_m86 (Normal User)
Pro


Messaggi: 143
Iscritto: 09/07/2008

Segnala al moderatore
Postato alle 15:18
Mercoledì, 23/07/2008
e che devo usare??? se lo sai perchè nn me lo dici?8-|

PM Quote
Avatar
gantonio (Normal User)
Guru^2


Messaggi: 1532
Iscritto: 09/09/2007

Segnala al moderatore
Postato alle 15:27
Mercoledì, 23/07/2008
Non c'e' un qualcosa da usare che non ti voglio dire ...

L'evento di ricezione va usato una sola volta per ricevere tutti i dati che arrivano ...

PM Quote
Avatar
giusy_m86 (Normal User)
Pro


Messaggi: 143
Iscritto: 09/07/2008

Segnala al moderatore
Postato alle 15:52
Mercoledì, 23/07/2008
Dim x As Integer
Dim ricevuto(0 To 100) As String
For x = 0 To 100
Winsock2.GetData ricevuto(x)
Next x
txtImp96.Text = ricevuto(0)
txtImp91.Text = ricevuto(1)
End Sub

avevo pensato a questo come soluzione...potrebbe andare? ps:cmq nn mi dà il risultato sperato...

PM Quote
Pagine: [ 1 2 3 ] Precedente | Prossimo