Cancels the file transfer operation associated with the specified user-defined object.

      Syntax

      public virtual bool Cancel(
         object userState
      )

      Parameters

      userState
      The user-defined object associated with the file transfer operation, or null reference to cancel all the current file transfer operations.

      Examples

      FTP Examples

      The Cancel method can also be used to cancel a specific transfer with a user-defined object.

      using System;
      using ComponentPro.IO;
      using ComponentPro.Net;
      
      ...
      
      static void Main()
      {
          // Create a new Ftp instance. 
          using (Ftp client = new Ftp())
          {
              // Connect to the FTP server. 
              client.Connect("demo.componentpro.com");
      
              // Authenticate. 
              client.Authenticate("test", "test");
      
              try 
              {
                  // Register an event handler. 
                  client.Progress += client_Progress_State;
      
                  // Asynchronously upload file "c:\test.zip". 
                  // "abc" is the user-defined object. 
                  long result = client.UploadFileAsync("c:\\test.zip", "test.zip", "abc").Result;
              }
              catch (FtpException exc)
              {
                  Console.WriteLine("Exception: " + exc.Message);
              }
          }
      }
      
      static void client_Progress_State(object sender, FileSystemProgressEventArgs e)
      {
          // Abort the uploading operation if the bytes transferred is greater than or equal to 500Kb. 
          if (e.UserState == "abc" && e.State == TransferState.Uploading && e.BytesTransferred >= 1024 * 500)
          {
              ((Ftp)sender).Cancel("user state"); // Cancel the transfer with "abc" user-defined object. 
          }
      }

      SFTP Examples

      The Cancel method can also be used to cancel a specific transfer with a user-defined object.

      using System;
      using ComponentPro.IO;
      using ComponentPro.Net;
      
      ...
      
      public void CancelWithState()
      {
          // Create a new Sftp instance. 
          using (Sftp client = new Sftp())
          {
              // Connect to the SFTP server. 
              client.Connect("demo.componentpro.com");
      
              // Authenticate. 
              client.Authenticate("test", "test");
      
              try 
              {
                  // Register an event handler. 
                  client.Progress += client_Progress_State;
      
                  // Asynchronously upload file "c:\test.zip". 
                  // "abc" is the user-defined object. 
                  long result = client.UploadFileAsync("c:\\test.zip", "test.zip", "abc").Result;
              }
              catch (SftpException exc)
              {
                  Console.WriteLine("Exception: " + exc.Message);
              }
          }
      }
      
      void client_Progress_State(object sender, FileSystemProgressEventArgs e)
      {
          // Abort the uploading operation if the bytes transferred is greater than or equal to 500Kb. 
          if (e.UserState == "abc" && e.State == TransferState.Uploading && e.BytesTransferred >= 1024 * 500)
          {
              ((Sftp)sender).Cancel("abc"); // Cancel the transfer with "abc" user-defined object. 
          }
      }

      Framework

      .NET Compact Framework.NET Compact Framework

      Supported version: 2.0, 3.5, and 3.9
      Assembly: ComponentPro.FileSystem.CF (in ComponentPro.FileSystem.CF.dll)

      .NET Framework.NET Framework

      Supported version: 2.0, 3.0, 3.5, 4.0, 4.5.x, 4.6.x and later
      Assembly: ComponentPro.FileSystem (in ComponentPro.FileSystem.dll)

      Portable Class Library for Windows Phone 8.1 and Windows 8.1 Store AppsPortable Class Library for Windows Phone 8.1 and Windows 8.1 Store Apps

      Supported version: 4.6.x and later
      Assembly: ComponentPro.FileSystem.WinPcl (in ComponentPro.FileSystem.WinPcl.dll)

      Universal Windows Platform (includes Windows 10 Mobile, Windows 10 Store Apps and Windows 10 IoT)Universal Windows Platform (includes Windows 10 Mobile, Windows 10 Store Apps and Windows 10 IoT)

      Supported version: 4.6.x and later
      Assembly: ComponentPro.FileSystem.Uwp (in ComponentPro.FileSystem.Uwp.dll)

      Xamarin AndroidXamarin Android

      Supported version: 2.3 and later
      Assembly: ComponentPro.FileSystem.Android (in ComponentPro.FileSystem.Android.dll)

      Xamarin MacXamarin Mac

      Supported version: 2.0.x and later
      Assembly: ComponentPro.FileSystem.Mac (in ComponentPro.FileSystem.Mac.dll)

      Xamarin iOSXamarin iOS

      Supported version: 5.1.x and later
      Assembly: ComponentPro.FileSystem.iOS (in ComponentPro.FileSystem.iOS.dll)

      See Also