Syntax

C#
namespace Starksoft.Net.Ftp
Visual Basic (Declaration)
Namespace Starksoft.Net.Ftp

Classes

  ClassDescription
Public classConnectionClosedEventArgs
Event arguments to facilitate the response event from the FTP server.
Public classFtpAsynchronousOperationException
This exception is thrown when an asynchronous operation fails or is cancelled.
Public classFtpAuthenticationException
This exception is thrown when an error occurs during the FTP authentication process.
Public classFtpBase
Base abstract class for FtpClient. Implements FTP network protocols.
Public classFtpCertificateValidationException
This exception is thrown when an X.509 certificate fails validation when establishing a secure command or data connection to the FTP server.
Public classFtpClient
The FtpClient Component for .NET is a fully .NET coded RFC 959 compatible FTP object component that supports the RFC 959, SOCKS and HTTP proxies, SSLv2, SSLv3, and TLSv1 as well as automatic file integrity checks on all data transfers. The component library also supports a pluggable directory listing parser. The Starksoft FtpClient Component for .NET support most FTP servers.
Public classFtpCommandResponseTimeoutException
This exception is thrown when the server fails to respond to an FTP command in a timely manner. The waiting time can be adjusted by specifing a different value for the CommandTimeout property.
Public classFtpConnectionBrokenException
This exception is thrown when a ftp connection is broken and fails.
Public classFtpConnectionClosedException
This exception is thrown when an error occurs during the FTP connection is closed while attempting to transmit data.
Public classFtpConnectionOpenException
This exception is thrown when an error occurs while attempt to open a command connection to the FTP server.
Public classFtpDataCompressionException
This exception is thrown when the FTP server is unable to enable or disable data compression.
Public classFtpDataConnectionException
This exception is thrown when the FTP client is unable to establish a data connection with the FTP server. Data connection are temporary, secondary connnections used to transfer files and other types of data between the FTP client and the FTP server. The method in which data connections are established is determined by the type of data transfer mode specified when connection to an FTP server (e.g. Passive, Active)
Public classFtpDataConnectionTimeoutException
This exception is thrown when the server fails to respond to an FTP data connection in a timely manner. The waiting time can be adjusted by specifing a different value for the TransferTimeout property.
Public classFtpDataTransferException
This exception is thrown when a data transfer fails.
Public classFtpException
This exception is thrown when a general FTP exception occurs.
Public classFtpFileIntegrityException
This exception is thrown when a file integrity check fails.
Public classFtpGenericParser
Generic ftp file and directory listing parser that supports most Unix, Dos, and Windows style FTP directory listings. A custom parser can be created using the IFtpItemParser interface in the event this parser does not suit the needs of a specific FTP server directory format listing.
Public classFtpItem
The FtpItem class represents the file and directory listing items as reported by the FTP server.
Public classFtpItemCollection
Ftp item list.
Public classFtpLoginException
This exception is thrown when an error occurs during the FTP login process.
Public classFtpProxyException
This exception is thrown when an exception occurs while opening a connection to the FTP server using a proxy. See the inner exception for more information when this exception is thrown.
Public classFtpRequest
FTP request object which contains the command, arguments and text or an FTP request.
Public classFtpRequestEventArgs
Event arguments to facilitate the FtpClient request event.
Public classFtpResponse
FTP response class containing the FTP raw text, response code, and other information.
Public classFtpResponseCollection
Ftp response collection.
Public classFtpResponseEventArgs
Event arguments to facilitate the response event from the FTP server.
Public classFtpResponseException
This exception is thrown when a file integrity check fails. For detailed information about the error, the FTP server response can be inspected via the Reponse property on this exception.
Public classFtpSecureConnectionException
This exception is thrown when an error occurs with a secure command or data connection to the FTP server.
Public classFxpCopyAsyncCompletedEventArgs
Provides data for the OpenAsyncCompleted event.
Public classGetDirListAsyncCompletedEventArgs
Provides data for the GetDirListAsyncCompleted event.
Public classGetDirListDeepAsyncCompletedEventArgs
Provides data for the GetDirAsyncCompleted event.
Public classGetFileAsyncCompletedEventArgs
Provides data for the GetFileAsyncCompleted event.
Public classOpenAsyncCompletedEventArgs
Provides data for the OpenAsyncCompleted event.
Public classPutFileAsyncCompletedEventArgs
Provides data for the PutFileAsyncCompleted event.
Public classTransferCompleteEventArgs
Event arguments to facilitate the transfer complete event.
Public classTransferProgressEventArgs
Event arguments to facilitate the transfer progress event.
Public classValidateServerCertificateEventArgs
Event arguments to facilitate the FtpClient transfer progress and complete events.

Interfaces

  InterfaceDescription
Public interfaceIFtpItemParser

This interface is used to create a pluggable, custom ftp item parser. The FtpClient object has a property named ItemParser which is used to override the default item parser behavior. You might need to create a custom parser for exotic FTP servers which the FtpClient object does not support. There is no standard supported in the RFC 959 standard as to what format an FTP server must give for directory and file listings. Although newer FTP protocol standards so support a structured directory listing with detailed information, this new format is not widely supported amoung FTP server vendors and there is no hope for support for legacy FTP servers.

The FtpClient object can handle the most common formats without issue but for some older or more exotic FTP servers you may such as an MVS legacy system may use a very different format than the common Unix and DOS style format. In this situation, it makes the most sense to create your own ftp item parser to parse the unique directory and file listing.

Enumerations

  EnumerationDescription
Public enumerationFileAction
Enumeration representing the three types of actions that FTP supports when uploading or 'putting' a file on an FTP server from the FTP client.
Public enumerationFtpCmd
FTP server commands.
Public enumerationFtpItemType
The itemType of item as reported by the FTP server.
Public enumerationFtpResponseCode
Enumeration representing all the various response codes from a FTP server.
Public enumerationFtpSecurityProtocol
Defines the possible versions of FtpSecurityProtocol.
Public enumerationHashingFunction
Enumeration representing the type of integrity algorithm used to verify the integrity of the file after transfer and storage.
Public enumerationTransferMode
The type of data transfer mode (e.g. Active or Passive).
Public enumerationTransferType
Enumeration representing type of file transfer mode.