+ Rispondi al Thread
Pagina 1 di 3 123 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 24

Discussione: [Vb.Net] Inviare file e cartelle da un server all'altro

  1. #1
    ubimaior non è in linea Scolaretto
    Post
    74

    [Vb.Net] Inviare file e cartelle da un server all'altro

    Ciao, risolto un probleme, ne arriva subito un'altro...
    Devo inviare alcuni file e cartelle da un server all'altro e sto cercando di creare un'applicazione in Asp.Net (Vb.Net).
    Posto la prima parte del codice:
    codice:
    <%@PageLanguage="Vb"Runat="server"%>
    <%@ImportNamespace="System" %>
    <%@ImportNamespace="System.Net" %>
    <%@ImportNamespace="System.Threading" %>
    
     
    <scriptrunat="server">
     
     
    Const localFile AsString = "ftp://ftp.miosito.com/cartella/pagina.htm"
    Const remoteFile AsString = "/pagina.htm"
    Const host AsString = "ftp://ftp.suosito.com"
    Const username AsString = "suosito.com"
    Const password AsString = tbPassword.text
     
    Dim URI AsString = host & remoteFile
    Dim ftp As System.Net.FtpWebRequest = CType(FtpWebRequest.Create(URI), FtpWebRequest)
     
    ftp.Credentials = New System.Net.NetworkCredential(username, password)
    
    Esce questo errore:
    BC30188: Declaration expected.

    Line 26: ftp.Credentials = New System.Net.NetworkCredential(username, password)

    Ma io "ftp" l'ho dichiarato una riga prima....
    Non riesco a capira cosa non vada, potete aiutarmi?
    Grazie.

  2. #2
    L'avatar di SignIn
    SignIn non è in linea Scribacchino
    Luogo
    Milano
    Post
    1,026
    ...la cosa fondamentale da fare in questo caso è spostare il codice nel file aspx.vb( code-behind), altrimenti per te sarà dura capire dove sta realmente il problema....

  3. #3
    ubimaior non è in linea Scolaretto
    Post
    74
    ora ci provo, grazie

  4. #4
    ubimaior non è in linea Scolaretto
    Post
    74
    Allora...
    sono riuscito a far funzionare l'applicazione in locale ma, una volta spostato tutto sul server (aruba), non funziona più.
    Credo che ci sia un problema sul path locale.
    Ecco una porzione di codice:
    codice:
    ProtectedSub cmdUpload_Click(ByVal sender AsObject, ByVal e As System.EventArgs) Handles cmdUpload.Click
    ' al click chiama la funzione e passa i parametri
    uploadFileUsingFTP("pagina.htm", "ftp:\ftp.hostingremoto.com\pagina.htm")
    lblMsg.Text = "File caricati con successo"
    EndSub
     
    PublicSub uploadFileUsingFTP(ByVal CompleteFTPPath AsString, ByVal CompleteLocalPath AsString, OptionalByVal UName AsString = "", OptionalByVal PWD AsString = "")
    UName = Session("Utente")
    Dim nomesito AsString = tbsito.Text
    'UName è la cartella personale dell'utente sul mio sito
    CompleteLocalPath = "d:\inetpub\webs\miosotoit\utenti\" & UName & "\pagina.htm"
    'Ovviamente, hostingremoto.com è il suo sito
    
    CompleteFTPPath = "ftp://ftp.hostingremoto.com/" & nomesito & "/pagina.htm"
    .......
    
    Riesci a spiegarmi cosa sbaglio?
    Le ho provate tutte (quelle che so).
    Ultima modifica di ubimaior; 13-09-2008 04:01 

  5. #5
    L'avatar di SignIn
    SignIn non è in linea Scribacchino
    Luogo
    Milano
    Post
    1,026
    ...è difficile dirti dove sbagli dato che non sò come usi i vari path che dichiari nel metodo uploadFileUsingFTP.
    Puoi vedere se un mio esempio ti può essere d'aiuto:
    Sign In: Upload file via FTP
    ...la pagina è composta da un controllo file upload attraverso il quale si seleziona il file dal computer locale e tramite un controllo button si invia il file al server web.

  6. #6
    L'avatar di bumm
    bumm non è in linea Very Important Person Ultimo blog: [VB2010] ComboBox ed Enumeratori
    Luogo
    Bologna
    Post
    2,142
    Blogs
    1
    Non credo che su Aruba ti danno lo spazio ftp non protetto da Username e Password almeno per la scrittura
    "HeloWorld.exe" 17 errors, 31 warnings.

    Non mi mandate le richieste di aiuto via PM! Non vi risponderò! Tutte le domande fateli sul forum!

  7. #7
    L'avatar di SignIn
    SignIn non è in linea Scribacchino
    Luogo
    Milano
    Post
    1,026
    ...le credenziali vengono usate... basta dare uno sguardo al primo post di ubimaior

  8. #8
    ubimaior non è in linea Scolaretto
    Post
    74
    Aruba ti dà una cartella (public) nella quale hai i permessi di scrittura, comunque sono io che creo i file, l'utente li preleva e basta.
    Il problema è che l'unica cosa che ho cambiato è l'url dei file da spostare. Il resto è uguale a quello che funziona in locale.
    Le credenziali del mio primo post sono quelle del sito dell'utente che preleva i files.

  9. #9
    L'avatar di SignIn
    SignIn non è in linea Scribacchino
    Luogo
    Milano
    Post
    1,026
    ...cerca di essere più preciso nell'esposizione, direi fino al limite della "banalità", personalmente ci ho capito poco di quello che hai scritto....
    Quote Originariamente inviato da ubimaior Visualizza il messaggio
    Aruba ti dà una cartella (public) nella quale hai i permessi di scrittura, comunque sono io che creo i file, l'utente li preleva e basta.
    l'utente li preleva da dove?...dal server?
    ...cioè l'utente esegue solo il download di file che te amministratore hai precedentemente caricato?
    Quote Originariamente inviato da ubimaior Visualizza il messaggio
    Il problema è che l'unica cosa che ho cambiato è l'url dei file da spostare. Il resto è uguale a quello che funziona in locale.
    Ma perchè non posti per intero il codice che usi per effettuare l'upload di file dalla tua macchina(local) alla macchina server.

  10. #10
    L'avatar di Unknow
    Unknow non è in linea Scolaretto
    Post
    88
    Non mi funziona!
    Ho scritto:
    codice:
    Using file As New System.IO.FileStream(Server.MapPath("Allegati/File.pdf"), System.IO.FileMode.Open)
    Response.ContentType = "application/octet-stream"
    Response.AddHeader("content-disposition", "attachment; filename=NameFile")
    Dim contentFile As Byte() = New Byte(Convert.ToInt32(file.Length) - 1) {}
    file.Read(contentFile, 0, Convert.ToInt32(file.Length))
    Response.BinaryWrite(contentFile)
    End Using
    Mi verificano due problemi:
    1) Il file salvato sulla scrivania è più grande (in dimensioni) di quello originale, quindi non si apre avvertendo che è danneggiato (mi viene da pensare che sia la riga colorata).
    2) Non riconosce nome e estensione del file originale, quindi devono essere inserite manualmente.

    Scusate! Ho sbagliato discussione! (che devo fare?)

+ Rispondi al Thread
Pagina 1 di 3 123 ultimoultimo

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi