Ultimate .NET SFTP Component - transfer files in C#, VB.NET & ASP.NET

Ultimate .NET SFTP Component - SSH SFTP for C#, VB.NET & ASP.NET

Easily add comprehensive SSH Secure File Transfer capabilities to your .NET applications

Overview

Ultimate .NET SFTP Component - transfer files in C#, VB.NET & ASP.NET

Ultimate SFTP is a 100%-managed .NET class library that adds powerful and comprehensive SSH Secure File Transfer (SFTP) capabilities to your .NET Console, Service, WinForms, Web Service, and WebForms applications.

If you need SFTP component for .NET Compact Framework, visit SFTP Component for .NET Compact Framework.
Select your desired license below
from $299
Product OverviewFeature ListWhat's IncludedTutorial

The Ultimate SFTP offers a comprehensive interface for SFTP, enabling you to quickly and easily incorporate Secure File Copy (SCP), SSH Secure File Transfer (SFTP), and advanced remote file management in your applications. In addition to downloading and uploading by file name, URL, and wild card masks, the SFTP library also supports remote file management functionality such as directory listings and the ability to rename, delete and move files on the server. The component also offers the flexibility, ease of use and rapid development features of a component without the complexities of working with the native socket class or in-depth knowledge of how the File Transfer Protocols are implemented. In most cases, only a few lines of code are required to implement a file transfer in your application. The set of properties and methods is sufficiently rich to enable you to take advantage of features such as the resumption of interrupted transfers, passive mode operation in the presence of firewalls, automatic file verification and support for custom server commands.

In addition to supporting remote file tasks, the Ultimate SFTP Component also supports multi-thread file transfers as well as data compression on-the-fly with built-in Zlib classes to speed up the transfers.

To save your effort writing a number of classes for different file systems such as FTP, SFTP, ZIP, Local Disk, and Virtual Disk, we introduce the Unified File System that makes the management of files on these systems seamless. The Unified File System allows you to use the same code to transfer files and directories directly between two different file systems. As a benefit, you may need to write only one class that works with all file systems. Such complicated work is done by the Ultimate File System and there is no need to learn more about other File Transfer Protocols. For more information, please visit this topic.

To help you become familiar with the features of the component, a number of well documented samples and topics were added to the comprehensive integrated online documentation which can be found at this web page.

If you need FTP, FTP over TLS/SSL (FTPS) Component, please visit FTP, FTP over TLS/SSL (FTPS) Library page.

The component is also included in the following suites which are bundles that include many additional .NET components:

Key Features

  • Upload, download, append, rename and delete file
  • Upload, download, or Remove entire directory (including subdirectories and files) quickly with a single line of code
  • Upload and download multiple files using wildcards mask with a single line of code
  • Support for files over 4GB
  • Parse listings automatically
  • Supports both ASCII and binary transfers
  • Supports restarting interrupted file transfers
  • Abort operations smoothly
  • Synchronizes folders easily
  • Compress and decompress data on-the-fly
  • SFTP protocol version 3 support
  • SFTP protocol version 4 support
  • All SSH and SFTP servers support
  • Tested with many SFTP servers such as Bitvise, CoreFTP, GlobalSCAPE, OpenSSH, wodSFTP...
  • Supports Multi-threading. You can use as many threads as you want to speed up file transfers
  • Unified Remote File System allows you to directly and easily transfer and synchronize files and directories between two different file systems such as FTP, SCP, ZIP, Disk, Memory, etc.
  • File transfer monitoring support with progress event
  • Fully supports both event-driven (asynchronous) and blocking (synchronous) application designs
  • Send and receive files to or from disk or memory streams. This allows you to compress and decompress ZIP files on-the-fly
  • Built-in Zlib streams
  • Filter files on name with wildcards mask or regular expression, size, or last modified date
  • Resume previously interrupted file
  • Allows you to check the exact transferring state like uploading, downloading, etc.
  • Tested with many SFTP servers such as Bitvise, CoreFTP, GlobalSCAPE, OpenSSH, wodSFTP...
  • FIPS 140-2 compliant. This mode is automatically enabled on systems where only compliant algorithms are allowed
  • Compliant with RFC 4250-4254, 4256 and 4419
  • Progress event argument contains full information about the file transfer such as: File size, transfer percentage, transfer speed, time left, etc.
  • Supports ASP.NET Medium Trust environment configuration
  • more...

Sample Usage - Transferring files and directories

C#
VB.NET
// Create a new instance of the Sftp class.
Sftp client = new Sftp();

// Connect to the SFTP server.
client.Connect("myserver");

// Authenticate.
client.Authenticate("user", "pass");

// Upload local file 'c:\test.dat' to the default remote directory.
client.UploadFile("c:\\test.dat", "test.dat");

string defaultDir = client.GetCurrentDirectory();
Console.WriteLine(string.Format("File has been uploaded to '{0}'.", defaultDir));

// Upload .cs and .vb files to the current directory.
client.UploadFiles("c:\\temp\\*.cs;*.vb", "");

// Download .mp3, .wav and .jpg files from '/mydir' directory to 'c:\temp'.
client.DownloadFiles("/mydir/*.mp3,*.wav,*.jpg", "c:\\temp");

// Upload an entire directory.
client.UploadDirectory("c:\\temp", "/");

// Download an entire directory.
client.DownloadDirectory("myremotedir", "c:\\temp");

// Disconnect.
client.Disconnect();

Supports HTTP Connect, SOCKS4, SOCKS4A & SOCKS5 Proxy Servers

Ultimate SFTP fully supports HTTP CONNECT, SOCKS4, SOCKS4A, and SOCKS5 proxy servers. By simply setting a few properties, you are able to download and upload files and directories from/to FTP servers through the desired proxy server.

Support for IPv6, the next generation Internet protocol

IPv6 (Internet Protocol version 6), the next-generation protocol designed by the IETF (Internet Engineering Task Force), will gradually replace the current version of the Internet Protocol, IPv4.

With Ultimate SFTP Component, users have an integrated service assurance solution that will provide them with FTP, and Proxy capabilities in mixed IPv4 and IPv6 environments. This helps organizations with the adoption of and the transition to IPv6 by making the management of such networks seamless.

.NET Technology

By using 100% managed code written in C#, the Ultimate SFTP component takes advantage of the numerous built-in features of the .NET Framework to enhance performance, moreover, the component is CLS compliant, and it does not use any unsafe blocks for minimal permission requirements. In addition, the component is highly compatible with Microsoft ClickOnce.

Supports many .NET Platforms

Ultimate SFTP Component for .NET supports the following platforms:
  • Windows Forms
  • Web Forms
  • Web Services

In addition, it is also possible to use the component in PowerShell - Microsoft’s new command console and scripting language.

Ultimate SFTP is fully compatible with Visual Studio 2005 (.NET 2.0), Visual Studio 2008 (.NET 3.5), and Visual Studio 2010 (.NET 4.0). As a benefit, you are always up-to-date with Microsoft's Technologies when using our products.

Supports event-driven (Asynchronous) and blocking (Synchronous) Design

Most applications written with the component will be synchronous. Synchronous method gives you the ease-of-use, but it can only returns the control back to the caller after it has finished, meaning that it blocks the execution of the caller for a period of time. Using synchronous method is recommended when you only need to execute one SFTP operation at a time.

You might decide that your design requires an asynchronous operation when it is needed to manage remote files simultaneously. Asynchronous methods provide a great deal of power. Asynchronous method is executed on a thread separate from the calling thread. Such operation is useful when an SFTP operation is time consuming and other codes need to execute without waiting for the initial operation to complete. In addition, the user interface will be most responsive when asynchronous methods are used.

Flexibility

The component can be used with a wide variety of programming languages and different types of development environments. As it was written in 100% managed Visual C#, it is fully supported by languages such as Visual Basic, Visual C#, J#, Managed C++, Borland C# Builder, and Delphi.

Fully Documented

We know that no product can be complete without comprehensive documentation. This is why the product includes a Developer's Guide and a complete Technical Reference which documents every property, method and event supported by the component. A context-sensitive online help is included with the product which can be accessed directly from within the development environment.

Lots of complete SFTP client samples in C#, VB.NET, and ASP.NET

In addition to the fully documented Developer's Guide and a complete Technical Reference, the component also includes a number of samples with full source code which help you become familiar with the features of the component and provide code which you can re-use in your own applications. The setup package contains three complete SFTP client applications: FTP Console Client, FTP WinForms Client, and FTP AJAX WebForms Client.

Royalty-free and Unlimited Server Deployment

All ATP products include royalty-free distributation, for unlimited site deployment. It means applications built using the Ultimate SFTP component can be redistributed to as many end-users as needed without additional royalties or runtime licensing fees.

Part of UltimateStudio

Ultimate Studio - All in one
Add UltimateStudio to your cart

Standard License

Buy and SAVE $1500
Your products are great. It makes my life so much easier. Now I only need to focus on business logic instead of having to deal with many limitations of the .NET framework.
Geoff Suddard - Software Developer
Office Choice Limited
ATP, Inc. is a Microsoft Partner. Our components are compatible with Windows 7 and optimized for Visual Studio