|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Oct 2002
Messaggi: 487
|
[VB6] Applicazione Client/Server
Ciao a tutti.
Ho un problema a cui non riesco a venere a capo. Ho un'applicazione client che deve inviare dei dati ad un server. Ho creato una connessione tcp, il client riesce a connettersi correttamente al server, ma i problemi arrivano quando invio i dati. Per inviare dati devo utilizzare il metodo SendData del controllo Winsock per ricevere i dati devo usare GetData. I tipi di dato inviabili/ricevibili sono tutti quelli predifiniti (byte, integer, ecc) compresi String e array di byte. Purtroppo il mio problema è che quando invio un array di byte dall'altra parte arrivano si tutti i byte inviati, ma puntualmente settati a zero. Se invece invio una stringa o un qualsiasi altro dato che non sia un vettore il problema non si pone... Sinceramente non so dove sbattere la testa...ne sapete qualcosa voi? Aloha!
__________________
AcM Racing :: Nulla è impossibile per chi non deve farlo |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Non ho mai provato a fare quello che dici tu, al massimo manda una stringa contenente uno pseudo vettore (es: "dato1,dato2,dato3.....") poi compatti con la JOIN e scompatti con la SPLIT
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Oct 2002
Messaggi: 487
|
Grazie, ma purtroppo devo assolutamente inviare un vettore di byte...
Continuo a non capire cmq...invio 8k dall'altra parte arrivano gli 8 k ... ma sono tutti a 0 ... boh
__________________
AcM Racing :: Nulla è impossibile per chi non deve farlo |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Oct 2002
Messaggi: 487
|
La notte porta consiglio ed ho risolto il problema...
I dati ricevuti vanno messi in una variabli passata al metodo "getadata". Avevo erroneamente pensato che tale variabile dovesse essere già inizializzata, così avevo imposto che essa fosse un array di 8k...Sbagliavo. Mi è bastato definirla come variant e passarla a al sopracitato metodo e tutto è funzionato. Evidentemente get data non fa altro che un set della viabile passata sul buffer dati che viene creato al momento della ricezione. Beh, mistero risolto!
__________________
AcM Racing :: Nulla è impossibile per chi non deve farlo |
|
|
|
|
|
#5 | |
|
Senior Member
Iscritto dal: Apr 2002
Città: Sondrio
Messaggi: 701
|
Re: [VB6] Applicazione Client/Server
Quote:
Ciao. Vorrei fare anch'io un programma del genere... ovvero: un programma che trasmette un messaggio al ricevitore tramite internet. In verità poi vorrei fare dei giochini per poter giocare on-line... Solo che non saprei proprio da dove iniziare... mi sai indicare se ci sono delle librerie? Grazie e ciao. |
|
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Guardati tutti i metodi, proprietà ed eventi del controllo Microsoft Winsock...serve questo per comunicare fra PC via remota...cmq ti allego un progettino di prova, cosi vedi come si fa, se hai dubbi chiedi pure!!
|
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Oct 2002
Messaggi: 487
|
Ciao. Se hai l'MsDN installato allora apri l'help e guarda la documentazione connessa al controllo WinSock.
Li troverai indicazioni sia su come realizzare un'applicazione Client/Server basata sul Tcp/Ip che un'applicazione peer2peer basata sull'UDP. Non è affatto difficile, se cmq hai particolari problemi son qua Aloha!
__________________
AcM Racing :: Nulla è impossibile per chi non deve farlo |
|
|
|
|
|
#8 | ||
|
Senior Member
Iscritto dal: Apr 2002
Città: Sondrio
Messaggi: 701
|
Quote:
Siccome dalla prossima settimana dovrò farmi 5 ore di treno al giorno voglio provare a fare il gioco di scala 40 giocabile tramite internet. Se ci riuscirò lo posterò, anche se per voi sarà una c@xxata... Grazie ancora e ciao. Quote:
Ciao. |
||
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Bene, se lo fai ci giochiamo
Se hai bisogno delle carte, ti passo un cotrollo che ho fatto, cosi da facilitare i giochi con le carte...poi magari nn ti piace!! PS. se vuoi vederlo mi devi mandare l'email in pvt (specifica anche che vuoi il controllo) perchè qui è troppo grosso e nn posso upparlo |
|
|
|
|
|
#10 | |
|
Senior Member
Iscritto dal: Apr 2002
Città: Sondrio
Messaggi: 701
|
Quote:
Comunque tu passa che male non fa... Grazie mille davvero. La mia mail è [email protected] Ciao. |
|
|
|
|
|
|
#11 |
|
Senior Member
Iscritto dal: Apr 2002
Città: Sondrio
Messaggi: 701
|
GRAZIE MILLE!!! E' FANTASTICO!
Ma se io volessi fare un controllo come hai fatto tu, come potrei fare? Cioè, da dove dovrei partire? Il VB lo conosco molto poco, ma mi piace. Ciao. |
|
|
|
|
|
#12 |
|
Senior Member
Iscritto dal: Apr 2002
Città: Sondrio
Messaggi: 701
|
Oppure se le volessi modificare, siccome mancano i quattro jolly.
Ciao. |
|
|
|
|
|
#13 |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Per modificarlo nn è difficile, però dovresti avere il codice...i due jolly nn ci sono per il semplice motivo che nn gli ho trocati.
Le carte che vedi sono contenute in una dll che windows adopera per "pescare" le carte nei suoi giochi....ma come ben sai..nn ci sta il jolly Il funzionamento di quel ocx è semplice, è una classe visuale, cioè a differenza di una dll ha qlc di visibile sulla form, per il resto è tutto completamente uguale. |
|
|
|
|
|
#14 |
|
Senior Member
Iscritto dal: Apr 2002
Città: Sondrio
Messaggi: 701
|
Ah... ok. E se volessi creare io un ogetto, come dovrei fare? Cioè... è possibile farlo in VB o come?
Grazie e ciao. |
|
|
|
|
|
#15 |
|
Senior Member
Iscritto dal: Apr 2002
Città: Sondrio
Messaggi: 701
|
Questa non la capisco...
Ho aperto un nuovo progetto, e sul form ho messo una picture. Fatto questo ho inserito il seguente codice: Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 1 Then Picture1.Move X, Y End If End Sub Come fa a non andare?! Mi sfarfalla tutto l'oggetto che dovrebbe spostarsi... Ciao. |
|
|
|
|
|
#16 |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Per forza ti sfarfalla, tu dici di muovere ad X, Y quando premi il bottone sinistro all'evento MouseMove, però in questo modo quando tu premi e tieni premuto il tasto ti sposti, lui entra talmente tante volte nella routine che il refresh della tuo occhio nn gli sta dietro e lo vedi sfarfallare.
Se vuoi fare una cosa del genere usa la routine: MouseDown |
|
|
|
|
|
#17 | |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Quote:
|
|
|
|
|
|
|
#18 | |
|
Senior Member
Iscritto dal: Apr 2002
Città: Sondrio
Messaggi: 701
|
Quote:
Ciao. |
|
|
|
|
|
|
#19 | |
|
Senior Member
Iscritto dal: Apr 2002
Città: Sondrio
Messaggi: 701
|
Quote:
|
|
|
|
|
|
|
#20 |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Se vuoi ti passo il sorgente di Cards.ocx cosi vedi com'è fatto e magari impari a farli, però mi devi rimandare la mail in pvt...tx
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 07:08.



















