• Regolamento Macrocategoria DEV
    Prima di aprire un topic nella Macrocategoria DEV, è bene leggerne il suo regolamento. Sei un'azienda o un hosting/provider? Qui sono anche contenute informazioni per collaborare con Sciax2 ed ottenere l'accredito nella nostra community!

Problema risolto Inviare Immagini tramite socket

Elix01

Nuovo utente
Autore del topic
26 Febbraio 2012
16
0
Miglior risposta
0
Ragazzi, ho bisogno di una mano a inviare uno screenshot del pc da un socket all'altro. Allego la classe che uso:

Perfavore, Entra oppure Registrati per vedere i Link!


Il codice non da errori, ma alla variabile "LastImage" dove dovrebbe rimanere l'immagine, non arriva un immagine leggibile.
Consigli?

- - - Aggiornato - - -

Up, nessuno sa il perché?
 
Ragazzi, ho bisogno di una mano a inviare uno screenshot del pc da un socket all'altro. Allego la classe che uso:

Perfavore, Entra oppure Registrati per vedere i Link!


Il codice non da errori, ma alla variabile "LastImage" dove dovrebbe rimanere l'immagine, non arriva un immagine leggibile.
Consigli?

- - - Aggiornato - - -

Up, nessuno sa il perché?

quando invii byte su un socket , non è detto che sia mantenuto l'ordine di invio ,quindi il testo potrebbe anche non iniziare con la parola Go di conseguenza non riceveresti nulla ^^
 
@TBH Quindi come posso inviare un immagine tramite socket e risolvere i problema?
 
@TBH Quindi come posso inviare un immagine tramite socket e risolvere i problema?

invii un messaggio che predisponi l'invio dell'immagine

tipo :
Client: testo Invio Immagine
server : ricevo comando , e blocca la trasformazione dei byte in testo
Client : Invio immagine
server: ricevo immagine

ti consiglio di salvarti su una lista i byte che ricevi , poi successivamente scorrerli e salvarli su un MemoryStream ed ottenere l'immagine dallo Stream.
 
Ok, Mi metto subito al lavoro e vi faccio sapere ^-^

- - - Aggiornato - - -

Edit, non riesco a inviare il file, dovrei partire da una certa parte, ad esempio:
Invio il primo pacchetto da 4096 Byte
Invio il secondo pacchetto, iniziando a leggere da 4096 Byte a 8192 Byte

E cosi via, ma non so come iniziare da 4096 Byte..
L'Errore è alla riga 72, io ho messo come valore "i" ma mi da "Offset e lunghezza eccedono i limiti della matrice o il conteggio è maggiore del numero di elementi presenti dall'indice alla fine della raccolta di origine."
 
Ok, Mi metto subito al lavoro e vi faccio sapere ^-^

- - - Aggiornato - - -

Edit, non riesco a inviare il file, dovrei partire da una certa parte, ad esempio:
Invio il primo pacchetto da 4096 Byte
Invio il secondo pacchetto, iniziando a leggere da 4096 Byte a 8192 Byte

E cosi via, ma non so come iniziare da 4096 Byte..
L'Errore è alla riga 72, io ho messo come valore "i" ma mi da "Offset e lunghezza eccedono i limiti della matrice o il conteggio è maggiore del numero di elementi presenti dall'indice alla fine della raccolta di origine."

il ciclo per scorrere i byte è corretto tu leggi 4kb alla volta e successivamente invi. Non devi parti dal 4096 a 8192 il memorystream tiene conto della posizione attuale , non è una tua preoccupazione ^^
 
@TBH Ok, so che sono io che non capisco nulla, ma anche sostituendo 0 a "i" non funziona..

- - - Aggiornato - - -
Ho trovato l'errore, era una cosa stupida, ho diviso gli eventi per inviare "go" e "stop"
Ma, quando provo a trasformare lo stream in un immagine mi da "Parametro non Coretto"..
Cosa significa?
 
Ultima modifica:
@TBH Ok, so che sono io che non capisco nulla, ma anche sostituendo 0 a "i" non funziona..

- - - Aggiornato - - -
Ho trovato l'errore, era una cosa stupida, ho diviso gli eventi per inviare "go" e "stop"
Ma, quando provo a trasformare lo stream in un immagine mi da "Parametro non Coretto"..
Cosa significa?

devi aggiornare la posizione del MemoryStream tramite position.
la suddivisione dei byte comunque non va bene, dato che li sovrapponi.
Read restituisce un int , se è maggiore di 0 ci sono altri byte altrimenti non ci sono.
 
Ho trovato una source interessante su piero tofy, ma sinceramente non capisco perché non vada..

Perfavore, Entra oppure Registrati per vedere i Link!


- - - Aggiornato - - -

Edit: Ce l'ho fatta, ora eliminerò i file cosi da non lasciare spazio aperto ai Lamer, potete chiudere
 
Ho trovato una source interessante su piero tofy, ma sinceramente non capisco perché non vada..

Perfavore, Entra oppure Registrati per vedere i Link!


- - - Aggiornato - - -

Edit: Ce l'ho fatta, ora eliminerò i file cosi da non lasciare spazio aperto ai Lamer, potete chiudere

Rinomino come risolto , potresti ottimizzare il tutto usando un unica porta tcp ^^