PDA

Visualizza la versione completa : [vb6] Winsock e chat


new
28-08-2002, 18:07
Ciao a tutti,sto cercando di realizzare una piccola chat con il winsock, ho studiato quelo che c' su msdn ma nn sono riuscito a far accettare la connessione da + utenti!

Vi posto il codice di ci che ho fatto

Innanzi tutto metto tutti gli utenti collegati in una lista, me li riprendo da una pagina asp sul server connessa ad un db

poi quando faccio doppio click su un utente mi connetto con lui:

Private Sub lstUser_DblClick()
Dim ip_user As String

' mi riprendo lo user che ho selezionato dalla lista
user_selezionato = lstUser.Text

' mi cerco il corrispondente indirizzo IP
For i = 0 To UBound(arraynomi)
If user_selezionato = arraynomi(i, 0) Then
ip = arraynomi(i, 1)
End If
Next i

'apro la connessione verso quello User.......

tcpclient(intMax).RemoteHost = ip
tcpclient(intMax).RemotePort = 1001

' Richiama il metodo Connect per stabilire una
' connessione.

tcpclient(0).Connect

'metto un messaggio sull'output per la connessione
txtOutput.Text = txtOutput.Text & vbCrLf & "connesso con: " & user_selezionato & vbCrLf

End Sub
-------------------------------------------------------------------

sulla tcpConnection request ho fatto cosi:
Private Sub tcpclient_ConnectionRequest(Index As Integer, ByVal requestID As Long)
If Index = 0 Then
intMax = intMax + 1
Load tcpclient(intMax)
tcpclient(intMax).LocalPort = 0
tcpclient(intMax).Accept requestID

End If
End Sub

----------------------------------------------------------------------
il problema con 2 persona funzia ma se provo a fare doppio click su un altro utente la persona di prima viene estromessa.......e va in errore.............
mi potete dare una mano o fornire un esempio su cui studiare?
grazie per lle eventuali risposte

imente
28-08-2002, 23:11
si vede che hai usato il codice di MSDN...

io quello non sono riuscito a farlo fungere...

ne ho fatto uno mio!

ora la domanda questa:

hai creato un applicativo server e tanti client

>>> oppure hai fatto un solo applicativo che funge da entrambi
e si avvia su ogni comp?

mi sembra la seconda... ma non sono sicuro

...


cmq

secondo me (non avendo tutto il codice non posso dire)
l'errore potrebbe essere qu

errato


'apro la connessione verso quello User.......

tcpclient(intMax).RemoteHost = ip
tcpclient(intMax).RemotePort = 1001

' Richiama il metodo Connect per stabilire una
' connessione.

tcpclient(0).Connect


corretto


'apro la connessione verso quello User.......

tcpclient(intMax).RemoteHost = ip
tcpclient(intMax).RemotePort = 1001

' Richiama il metodo Connect per stabilire una
' connessione.

tcpclient(intMax).Connect



...

non ne sono sicuro (forse mi sbaglio) per dovresti
controllare bene l'idea che vuoi realizzare...

io ho fatto una chat in VB che si appoggia ad
alcuni file ASp e un DB su un server

il funzionamento alquanto complesso

se vuoi ti posso esplicare il mio progetto

...

non ho capito bene cmq come il tuo...
soprattutto perch hai esposto poco codice

la mia email imente@virgilio.it

...

new
29-08-2002, 12:10
grazie x la risp
t ho postato il codice per email spiegando quello che ho intenzione di fare .


Fammi sapere tnx:)

Loading