Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Sezione sbagliata. Nonostante tu stia usando un IDE per .NET, TUTTO il codice che hai usato è VB6, quindi ti consiglio di chiedere nella sezione apposita, dove ti sapranno aiutare di più.
Comunque mi ci sono messo su e sono riuscito ad elaborare un codice che funziona, anche se il trasferimento è un pò lento, ma ci lavorerò su per far si di non inviare un byte alla volta
Dato che potrebbe servire a qualcuno che in futuro può avere il mio stesso problema, ecco il codice:
Client che invia:
Codice sorgente - presumibilmente VB.NET
PrivateFunction invia()
Const Immagine AsString="C:\Img1.jpg"
Dim N AsInteger
Dim c AsLong
Dim P AsByte
N =FreeFile()
FileOpen(N, Immagine, OpenMode.Binary)
c = 0
WhileNot c =LOF(1)
c = c + 1
FileGet(N, P, c)
Winsock2.SendData(P)
Application.DoEvents()
EndWhile
FileClose(N)
Winsock2.Close()
MsgBox("File Inviato")
EndFunction
Server che riceve:
Codice sorgente - presumibilmente VB.NET
PrivateSub Winsock1_CloseEvent(ByVal sender AsObject, ByVal e As System.EventArgs)Handles Winsock1.CloseEvent
PrivateSub Winsock1_ConnectionRequest(ByVal sender AsObject, ByVal e As AxMSWinsockLib.DMSWinsockControlEvents_ConnectionRequestEvent)Handles Winsock1.ConnectionRequest
Winsock1.Close()
Winsock1.Accept(e.requestID)
FileOpen(1, "C:\Img245.jpg", OpenMode.Binary)
EndSub
PrivateSub Winsock1_DataArrival(ByVal sender AsObject, ByVal e As AxMSWinsockLib.DMSWinsockControlEvents_DataArrivalEvent)Handles Winsock1.DataArrival
Dim immagine()AsByte
Winsock1.GetData(immagine)
FilePut(1, immagine)
EndSub
Ultima modifica effettuata da VBasicPC il 18/08/2010 alle 20:38
Bhe, il problema è che l' immagine intera è troppo grande da inviare, cioè non arriva completamente, quindi stavo pensando di creare un array di byte che divide i bytes presi dall' immagine in 4 parti, e dopodichè invia parte dopo parte. Dici che è una buona idea?
Ultima modifica effettuata da VBasicPC il 19/08/2010 alle 13:58
Bhe, il problema è che l' immagine intera è troppo grande da inviare, cioè non arriva completamente, quindi stavo pensando di creare un array di byte che divide i bytes presi dall' immagine in 4 parti, e dopodichè invia parte dopo parte. Dici che è una buona idea?
si chiama buffering, è una buona idea (anche se non capisco come faccia a non funzionare così com'è)