Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    [VB6]Problema FTP e path

    Ciao.
    Sto facendo un client FTP il problema è che se decido di fare un upload/download di un file che si trova sotto una cartella con un nome separato (tipo "documents and settings") non funziona, perchè l'ftp non riconosce un nome con spazi.
    Per risolvere il problema potrei mettere il nome tra apici,...oppure?

    Questo è il mio codice:
    codice:
    Private Sub cmdDownLoad_Click()
    WaitForResponse
    On Error GoTo ERRORE
    FTPinet.Execute "", "get " & lstServer.Text & " " & "" & dirSelez.Path & "" & "\" & lstServer.Text
    Exit Sub
    ERRORE:
        MsgBox "ERRORE: " & Err.Description, vbCritical + vbOKOnly
    End Sub
    dove lstServer è una ListBox e dirSelez è una DirListBox.

    Esiste un oggetto in VB che mi restituisce un path che vada bene per l'FTP?

  2. #2
    Utente di HTML.it L'avatar di buba88
    Registrato dal
    Feb 2004
    Messaggi
    538
    allora se nn sbagli dovresti usare i nomi "ristretti", sin pratica quelli che usa l'MS-DOS
    devi usare queste funzioni in un modulo


    Private Declare Function GetShortPathName Lib "kernel32" Alias "GetShortPathNameA" _
    (ByVal lpszLongPath As String, ByVal lpszShortPath As String, _
    ByVal lBuffer As Long) As Long
    Public Function GetShortPath(strFileName As String) As String

    Dim lngRes As Long
    Dim strPath As String

    strPath = Space$(255)
    lngRes = GetShortPathName(strFileName, strPath, 255)

    GetShortPath = trim$(strPath)
    End Function

    poi dovresti richiamare la funzione getshortpath dal form passandogli il nome completo del file o della cartella
    prova cosi...

  3. #3
    Grazie Buba88. Sembra che funziona, ma il problema è che messo nell' "Execute" dell'Inet, non funziona il download:

    codice:
    Private Sub cmdDownLoad_Click()
    PathCorto = ModConn.GetShortPath(dirSelez.Path)
    WaitForResponse
    On Error GoTo ERRORE
    FTPinet.Execute "", "get " & lstServer.Text & " " & PathCorto & "\" & lstServer.Text
    Exit Sub
    ERRORE:
        MsgBox "ERRORE: " & Err.Description, vbCritical + vbOKOnly
    End Sub
    mi restituisce "error 5:accesso negato".
    Inoltre ho notato che non legge più il "lstServer.Text" dopo la variabile "PathCorto".Ossia l'execute sembra che si fermi dopo aver usato la funzione "GetShortPath".


  4. #4
    Idee?

  5. #5
    Utente di HTML.it L'avatar di allejo
    Registrato dal
    Jul 2001
    Messaggi
    747
    Xkè nonm usi il file .bat????????
    e poi dal programma fai la shell del file .bat........

    cioè nel file pippo.bat metti
    codice:
    ftp -i -s:d:\percorsotext\ftppippo.txt nomeserver >c:\ftplog.log
    e nel ftppippo.txt metti questo
    codice:
    nomeuser
    pwd
    cd dove salvare
    send percorso file da inviare
    disconnect
    bye
    e da vb

    codice:
    x= shell(c:\pippo.bat)
    Allejo

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.