PDA

View Full Version : [VB.NET] Upload FTP


djremix
29-06-2009, 10:04
Salve a tutti. Premettendo che son 2 gironi che giro forum, siti web, supporti, ecc .. per trovare una solzuione. Ma è stato tutto inutile. Avrei bisogno di caricare un semplice file su un server reoto via FTP. Il server (in shared hosting) è su Aruba. Ho utilizzato il seguento codice:


Dim up As New Net.WebClient
up.Credentials = New System.Net.NetworkCredential("xxxxxxxxx@aruba.it", "xxxxxxxxx")
up.UploadFile("ftp://ftp.sito.com/", "C:\" & varname & ".txt")
Me.Label1.Text = "File di testo caricato con successo sul server"

Importando


Imports System.Net
Imports System.Net.WebClient

Quando lo provo appare il seguento errore:

"Eccezzione durante una richiesta WebClient"

Avete soluzione in merito ?
Grazie in anticipo delle eventuali risposte.

^TiGeRShArK^
29-06-2009, 14:04
puoi gestirlo semplicemente tramite il comando:

ftp -s:comandi.txt ftp.sito.com

dove il file comandi.txt contiene le seguenti cose:

username
password
put nomefile.txt
bye

Con il webclient sinceramente non ho mai fatto upload su ftp......
Se vuoi usare quella soluzione aspetta che qualcuno ti spieghi come fare se gli è già capitato di usarlo :p

djremix
29-06-2009, 15:31
Ciao e grazie per aver risposto.
Dimenticavo di dire che son su Hosting Windows. Può funzionare ancora la soluzione da te suggerita ?
CIao !!

^TiGeRShArK^
29-06-2009, 15:56
Ciao e grazie per aver risposto.
Dimenticavo di dire che son su Hosting Windows. Può funzionare ancora la soluzione da te suggerita ?
CIao !!

...dipende che intendi con "hosting windows"...
se intendi una web farm allora dipende dai diritti che hai, se sei su un server virtuale o reale di cui sei l'amministratore allora assolutamente si...
cmq provare non ti costa niente :p

djremix
29-06-2009, 16:08
Nel primo post ho detto che sto su shared hosting .. e su aruba ... quindi ..

^TiGeRShArK^
29-06-2009, 16:59
Nel primo post ho detto che sto su shared hosting .. e su aruba ... quindi ..

boh...allora dipende dai permessi che hai...
se ne hai a sufficienza funziona, altrimenti no......

MarcoGG
29-06-2009, 17:54
Dim up As New Net.WebClient
up.Credentials = New System.Net.NetworkCredential("xxxxxxxxx@aruba.it", "xxxxxxxxx")
up.UploadFile("ftp://ftp.sito.com/", "C:\" & varname & ".txt")
Me.Label1.Text = "File di testo caricato con successo sul server"

WebClient per Ftp ?
Esistono classi forse più specifiche per Ftp. Già provato con qualcosa del genere ?

Dim FtpWR As System.Net.FtpWebRequest = DirectCast(System.Net.FtpWebRequest.Create("ftp://ftp.nomeSitoFtp.com/nomeFile.xyz"), System.Net.FtpWebRequest)
FtpWR.Credentials = New System.Net.NetworkCredential("username", "password")
FtpWR.Method = System.Net.WebRequestMethods.Ftp.UploadFile

Dim arrayBFile() As Byte = System.IO.File.ReadAllBytes("percorsoDirLocale\nomeFile.xyz")

Dim S As System.IO.Stream = FtpWR.GetRequestStream()
S.Write(arrayBFile, 0, arrayBFile.Length)
S.Close()

Già provato anche con questo ? :
My.Computer.Network.UploadFile(...)