09/11/11 13:42
jaco94++
Salve a tutti
Ho un problema, la mia applicazione è un server che deve fare essenzialmente due cose:
1) deve ricevere del semplice testo e con degli if gestisco in base al comando arrivato cosa deve fare il server
2) deve poter ricevere file per salvarli o altro
il mio problema ora è: io uso tcplistener faccio accettare la connessione ad una socket non bloccante e ricevo il mio testo e lo elaboro in questo modo:
il problema è che se ricevo un immagine ad esempio, il mio programma trasforma i byte dei file in testo e questo presumo essere un grosso problema , vorrei modificare il codice in modo da si ricevere testo per i comandi ma nel caso mi arrivi un file salvarlo nel disco come posso risolvere ?
Ps: prima che arrivi un file viene inviato un comando al server che dovrebbe prepararlo per la ricezione di un file
Ho un problema, la mia applicazione è un server che deve fare essenzialmente due cose:
1) deve ricevere del semplice testo e con degli if gestisco in base al comando arrivato cosa deve fare il server
2) deve poter ricevere file per salvarli o altro
il mio problema ora è: io uso tcplistener faccio accettare la connessione ad una socket non bloccante e ricevo il mio testo e lo elaboro in questo modo:
Socket me = newex.AcceptSocket(); me.Blocking = false; int totalbytes = 0; SocketError State = new SocketError(); while (true && AbortLS == false) { Thread.Sleep(10); totalbytes = me.Receive(bytes, 0, 1, SocketFlags.None, out State); if (SocketError.Success == State) { if (totalbytes > 0) { temp += System.Text.Encoding.ASCII.GetString(bytes, 0, totalbytes); } else { me.Close(); me.Dispose(); break; } } else if (SocketError.WouldBlock != State) { MessageBox.Show("Socket Error", "Error"); me.Close(); me.Dispose(); break; } if (me.Available == 0 && temp != string.Empty) { if(temp=="HH") { ..... } temp=""; }
il problema è che se ricevo un immagine ad esempio, il mio programma trasforma i byte dei file in testo e questo presumo essere un grosso problema , vorrei modificare il codice in modo da si ricevere testo per i comandi ma nel caso mi arrivi un file salvarlo nel disco come posso risolvere ?
Ps: prima che arrivi un file viene inviato un comando al server che dovrebbe prepararlo per la ricezione di un file
Ultima modifica effettuata da jaco94++ 09/11/11 13:45
aaa