Sample code for 30+ languages & platforms
.NET Core C#

FTP Upload with Progress Event Callbacks

See more FTP Examples

FTP upload with progress event callbacks.

Chilkat .NET Core C# Downloads

.NET Core C#
// PercentDone callback method.
public void handlePercentDone(int pctDone, out bool abort)
    {
    // Application code goes here.
    }

// ProgressInfo callback method.
public void handleProgressInfo(string name, string value)
    {
    // Application code goes here.
    }

private void ChilkatExample()
    {
    bool success = false;

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

    Chilkat.Ftp2 ftp = new Chilkat.Ftp2();

    Chilkat.Ftp2.PercentDone percentDone = new Chilkat.Ftp2.PercentDone(handlePercentDone);
    ftp.setPercentDoneCb(percentDone);

    Chilkat.Ftp2.ProgressInfo progressInfo = new Chilkat.Ftp2.ProgressInfo(handleProgressInfo);
    ftp.setProgressInfoCb(progressInfo);

    ftp.Hostname = "ftp.someFtpServer.com";
    ftp.Username = "my_ftp_username";
    ftp.Password = "my_ftp_password";

    // Connect and login to the FTP server.
    success = ftp.Connect();
    if (success != true) {
        Debug.WriteLine(ftp.LastErrorText);
        return;
    }

    // Change to the remote directory where the file will be uploaded.
    success = ftp.ChangeRemoteDir("junk");
    if (success != true) {
        Debug.WriteLine(ftp.LastErrorText);
        return;
    }

    // Upload a file.
    string localPath = "c:/temp/hamlet.xml";
    string remoteFilename = "hamlet.xml";

    success = ftp.PutFile(localPath,remoteFilename);
    if (success != true) {
        Debug.WriteLine(ftp.LastErrorText);
        return;
    }

    success = ftp.Disconnect();

    Debug.WriteLine("File Uploaded!");

    }