Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - [VB.NET] Duplicare il contenuto di una TabPage x Chat... che ne pensate?
Forum - C# / VB.NET - [VB.NET] Duplicare il contenuto di una TabPage x Chat... che ne pensate?

Avatar
cyclope05 (Normal User)
Newbie


Messaggi: 16
Iscritto: 06/09/2012

Segnala al moderatore
Postato alle 13:46
Mercoledì, 23/10/2013
Ciao a tutti,
stò realizzando una piccola chat.
Il server è multiutente ed ho utilizzato i timer perchè i thread ancora non riesco ad usarli è da pochissimo che programmo in net, nel server ho aggiunto una listview nella quale espongo alcuni dati del client che si connette come indirizzo ip e nome utente.
vorrei fare in  modo che cliccando su una singola riga si apra una chat singola per quel solo utente e così avevo pensato ad una tabpage nella quale nella prima ho inserito una richtextbox che conterrà la chat sotto un textbox per scrivere e un button che invia il messaggio appena scritto.
Ad oggi ottengo questo risultato....
Quando un client si connette mi compare correttamente nella lista .... se i client mi scrivono .. tutto compare nella richtextbox del tabepage1 e se io rispondo tutti ricevono la mia risposta ma i client tra loro sono correttamente esclusi, nel senso che leggono solo le risposte del server e non si leggono tra loro...
Questo è quello che vorrei  fare ossia chattare in modo privato con ogni singolo client... quindi mi chiedevo ... c'è un modo per duplicare tutta la tabpage1 compreso i codici del button che invia le risposte?
Come posso fare per rendere la chat lato server privata?
Spero di essermi spiegato.... e vi ringrazio per l'aiuto che potrete darmi, ho dato una bella occhiata in giro ma giuro non ci stò capendo + nulla.... quasi quasi rimpiango il vb6 :(
grazie a tutti ancora per la pazienza


Vivi e lasci vivere.. e.. se non ti lasciano vivere... falli fuori ^__^
PM Quote
Avatar
Thejuster (Member)
Guru^2


Messaggi: 1704
Iscritto: 04/05/2008

Segnala al moderatore
Postato alle 14:38
Mercoledì, 23/10/2013
Testo quotato


uasi quasi rimpiango il vb6



No, per carità!
Hai fatto la scelta migliore a passare al net.

Per il resto dovresti spiegarci in che modo permetti le query private.

In MMORpgmaker, nel mio server, utilizzavo una sorta di schema ben preciso per indentificare ip, posizione, messaggio ed utente.

semplicemente in questo modo

il client invia un messaggio al server:

Struttura:
[ TIPO | AUTORE | DESTINAZIONE | MESSAGGIO ]

( privmsg|Thejuster|cyclope|Ciao come va? )

il tutto si distingue dal tipo.

Può essere un messaggio privato ( privmsg )

quanto un messaggio pubblico:

( msg|Thejuster|canale_pierotofy|Giorno a Tutti! )

fatto questo puoi semplicemente splittare la stringa eliminando il saparatore |

Messaggio(0) ' tipo
Messaggio(1) 'nick
Messaggio(2) 'destinazione
Messaggio(3) 'messaggio

dopo puoi farne quello che vuoi
mettere i dati in un tab, in una textbox o altro.

posso consigliarti di dare un occhiata a questa mia vecchia versione

http://www.pierotofy.it/pages/projects/files.php?id=459

contiene un server multi thread e soket multipli divisi ognuno per fatti suoi.
e osservare la gestione dei messaggi e del loro comportamento.



PM Quote
Avatar
cyclope05 (Normal User)
Newbie


Messaggi: 16
Iscritto: 06/09/2012

Segnala al moderatore
Postato alle 17:37
Mercoledì, 23/10/2013
grazie 1000
si io faccio in questo modo, il client quando si collega mi invia una stringa contenente tutti i dati di cui ho bisogno compreso il suo IP.
e ok su quello che mi hai consigliato di fare perchè tramite l'ip so sempre quale client mi risponde e quindi sparo la sua risposta nella tab che ha lo stesso ip come text
quello che non ho capito come fare è la risposta... nel senso che quando poi io rispondo dal server la mia risposta deve arrivare solo a quel client e non a tutti...

PS per ovviare a equivoci, nel mio caso il server è il pc centrale che riceve le connessioni di tutti i client (utenti)


mi vado subito a guardare il tuo esempio speriamo che con quello risolvo :D grazie


ah ok... ho riletto attentamente quello che mi avevi scritto ed ho individuato come risolvere anche l'invio :D grazie grz per la super dritta

Ultima modifica effettuata da cyclope05 il 23/10/2013 alle 17:40


Vivi e lasci vivere.. e.. se non ti lasciano vivere... falli fuori ^__^
PM Quote