Sample code for 30+ languages & platforms
B4X

FTP Download with Progress Event Callbacks

See more FTP Examples

FTP download with progress event callbacks.

Chilkat B4X Downloads

B4X
Sub ftp_PercentDone (percentDone As Int) As Boolean
    Log("Percent Done: " & percentDone)
    Return False   ' Return True to abort
End Sub

Sub ftp_ProgressInfo (name As String, value As String)
    Log(name & ": " & value)
End Sub

Sub ChilkatExample

    Dim success As Boolean = False

    '  This example requires the Chilkat API to have been previously unlocked.
    '  See Global Unlock Sample for sample code.





    Dim ftp As ChilkatFtp2
    ftp.Initialize("ftp")

    ftp.Hostname = "ftp.someFtpServer.com"
    ftp.Username = "myLogin"
    ftp.Password = "myPassword"

    '  Connect and login to the FTP server.
    success = ftp.ConnectOnly
    If success <> True Then
        Log(ftp.LastErrorText)
        Return
    End If

    success = ftp.LoginAfterConnectOnly
    If success <> True Then
        Log(ftp.LastErrorText)
        Return
    End If


    '  Change to the remote directory where the file is located.
    '  This step is only necessary if the file is not in the home directory
    '  of the FTP account.
    success = ftp.ChangeRemoteDir("junk")
    If success <> True Then
        Log(ftp.LastErrorText)
        Return
    End If


    Dim localFilename As String = "c:/temp/hamlet.xml"
    Dim remoteFilename As String = "hamlet.xml"

    '  Ensure that we get PercentDone callbacks.
    ftp.AutoGetSizeForProgress = True

    '  Download the file.
    success = ftp.GetFile(remoteFilename, localFilename)
    If success <> True Then
        Log(ftp.LastErrorText)
        Return
    End If


    success = ftp.Disconnect

    Log("File Downloaded!")

End Sub