Oppure

Loading
10/10/08 16:43
fa1212
Ciao a tutti allora ho già visto che c'erano argomenti relativi al winsock ma non quelli che servivano a me quindi sono obbligato a disturbarvi.
io ho un piccolo client e un server entrambi visibili agli utenti. Io vorrei impostare dal client una msgbox con titolo, messaggio e icona per poi inviarla al server (praticamente ogni volta il messaggio cambia). Poi ho un'altro problema, io ho iniziato con questo codice per far connettere il client al server ma
Private Sub Command1_Click()
Dim x As String
x = Text1.Text
RemoteHost = x
Winsock1.Connect x, "10"
Command1.Enabled = False
End Sub

Private Sub Command2_Click()
Winsock1.SendData "msg"
End Sub

Private Sub Command3_Click()
Winsock1.SendData "spegni"
End Sub

ma nel momento in cui io premo il bottone per inviare un messaggio compare questo messaggio:
run-time error 40006 dice che è sbagliato il protocollo per la transizione della richiesta ma non so perchè poi mi evidenzia
Winsock1.SendData "msg"

a questo punto le mie richieste sono 2:
1) come si fa a fare che il server capisca la msgbox che può variare in base ai dati inseriti sul client e come faccio a risolvere il mio problema col winsock.

Fiducioso nele vostre risposte vi ringrazio in anticipo
Ultima modifica effettuata da fa1212 10/10/08 16:45
aaa
10/10/08 17:04
GrG
l'errore dato al 90% è perchè hai messo il tuo ip pubblico, invece se lo provi da locale come IP devi mettere 127.0.0.1

per inviare delle msgbox io personalmente faccio così, poi vedi tu:
per esempio nel client metto:
winsock1.senddata "msg=TuoTesto|Tipo|altri dettagli"
esempio:
winsock1.senddata "msg=Ciao|Alert|ec..."

nel server potresti mettere x esempio:
Dim data as string
winsock1.getdata data
if instr(1, data, "msg=";) > 0 then
data = replace(data, "msg=","";)
dim tmp() as string
tmp = split(data, "|";)
adesso in tmp ci sono memorizzate le varie caratteristiche, testom tipo, ecc..
poi puoi fare tipo:
if tmp(1) = "Alert" then
msgbox tmp(0), vbExclamation, tmp(ecc..)

capito?
aaa
10/10/08 17:12
fa1212
+ o - nn è da molto che programmo. ma il fatto è che se io voglio amministrare 2 computer attraverso internet non posso usare 127.0.0.1
aaa
10/10/08 17:21
GrG
per le prove in locale, cioè se hai server e client sullo stesso computer DEVI usare per forza 127.0.0.1 poi quando dai il progr a un'altra persona DEVI usare l'ip pubblico...
aaa
10/10/08 18:55
fa1212
ok grazie,
ancora una cosa se volessi comunicare con l'altro utente vorrei usare tipo una piccola chat giusto tra client e server cosa potrei usare?
aaa
10/10/08 19:22
GrG
per fare una chat tipo MSN devi fare tipo:
client:
winsock1.senddata text1.text (<-la text1 contiene il messaggio ke l'utente vuole inviare)

server:
dim data as string
winsock1.getddata data
text2.text = text2.text & vbcrlf & "Tipo scrive:" & data
Questultima parte aggiunge alla text2(che sarebbe la "finestra" dove visualizzare i messaggi ricevuti)i messaggi ricevuti...

Visto che sei agli inizi ti consiglierei di cercarti su google guide ed esempi sul winsock, che se ne trovano ;)
aaa
11/10/08 12:54
fa1212
ok grazie sei un genio
e io sono pieno di problemi
aaa