Oppure

Loading
06/02/08 19:41
antometal
mi spiego...
ho questo codice
for i=0 to 1
wsk.senddata info(i)
next i


i dati xò mi arrivano tt insieme: info(0)info(1)info(2)...info(n)

cè un modo per inviare i dati quando la socket ha finito l' invio dei dati precedenti?
aaa
06/02/08 20:03
gius
Potresti fare
Dim OK As String
OK = "OK"
If Winsock1.BytesReceived Then
Winsock1.SendData(OK)
End If


Invece al server
Dim Str As String
Winsock1.GetData Str,vbString
If Str = "OK" Then
'Esegui il ciclo
End If
Ultima modifica effettuata da gius 06/02/08 20:04
aaa
07/02/08 15:12
LuigiBiasi
prova a fare un doevents subito dopo la send in questo modo:

wsk.Senddata "mia stringa"
doevents
'esegue le altre operazioni come un altro invio
wsk.Senddata "un altra stringa"
doevents


prova cosi.
ciao
Ultima modifica effettuata da LuigiBiasi 07/02/08 15:13
aaa
07/02/08 18:23
antometal
gius: così no xk la socket che invia nn riceve
luigibassi: così ho provato ma niente, invia cmq tt di seguito... molto strano

altre soluzioni (niente di pensante)
aaa
07/02/08 18:37
gius
Postato originariamente da antometal:

gius: così no xk la socket che invia nn riceve

Ne crei un'altra che riceve?!Questi sono i prob:asd:
aaa
07/02/08 19:31
LuigiBiasi
se nn funziona come ho detto, allora dovresti fare cosi:
invia il messaggioe quando il server riceve il messaggio inviare al client un messaggio di giusta ricezione. cioè una serie di invio di messaggi.

client wsk.senddata "ok"
il server quando riceve "ok" invia wsk.senddata "okricevuto"
il client quando riceve "okricevuto" invia un altro messaggio.

Non so se sono stato chiaro...
aaa
07/02/08 20:00
gantonio
Guarda che il protocollo TCP/IP non garantisce nulla circa la "separazione" dei dati inviati a livello di applicazione (application layer).

Il sistema non e' affatto "obbligato" a separare i dati che trasmetti, anche se li trasmetti separati; questi possono essere ricevuti - in ogni caso - uniti.

Come e' anche possibile che una stringa di dati venga ricevuta "spezzata" in parti (anche se nel corretto ordine).

Questi sono "i fondamenti" della programmazione di rete TCP/IP ...

A livello "applicazione", l'unica cosa che puoi fare e' inserire dei caratteri "marker" che indichino al codice che riceve, come "ricostruire" i dati inviati.

Se non hai chiari questi concetti, ti consiglio di fermarti e studiarli bene perche', altrimenti, non arriverai mai ad avere un programma che comunichi stabilmente ed affidabilmente in rete.
aaa
07/02/08 20:12
antometal
grazie a tt
seguirò il consiglio di luigi anche se nn è proprio ciò che è volevo ma è sicuramente il metodo + sicuro
aaa