Class wwFtpClient
about 2 minutes to read

An FTP and FTPS client that allows you to access FTP servers and perform common FTP transfer and management operations.

Uses the Fluent FTP .NET library.

foxpro
loFtp = CREATEOBJECT("wwFtpClient") loFtp.cServer = "someserver.com" loFtp.nPort = 23 && only needed with custom ports loFtp.cUsername = "crankyFun221" loFtp.cPassword = "superSeekrit#9" IF !loFtp.Connect() ? loFtp.cErrorMsg RETURN ENDIF ? "Connected to " + lcServer IF !loFtp.DownloadFile("Tools/jsMinifier.zip", "c:\temp\jsMinifier.zip") ? loFtp.cErrorMsg RETURN ENDIF ? "Downloaded " + "Tools/jsMinifier.zip" lcUploadFile = "Tools/jsMinifier" + SYS(2015) + ".zip" IF !loFtp.UploadFile("c:\temp\jsMinifier.zip", lcUploadFile) ? loFtp.cErrorMsg RETURN ENDIF ? "Uploaded " + lcuploadFile *** provide a folder name (no wildcards) loCol = loFtp.ListFiles("/Tools") ? TRANSFORM(loCol.Count ) + " matching file(s)" ? loFtp.cErrorMsg FOR EACH loFile IN loCol FOXOBJECT IF ( AT("jsMinifier_",loFile.Name) = 1) ? loFtp.oBridge.ToJson(loFile) && print out file obj as json IF loFtp.DeleteFile(loFile.FullName) ? "Deleted " + loFile.FullName ENDIF ENDIF ENDFOR loFtp.Close()

Remarks

Dependencies

This API uses a .NET library to provide FTP functionality.

  • wwIpstuff.dll
  • wwDotnetBridge.dll
  • FluentFtp.dll

Class Members

MemberDescription

OnFtpBufferUpdate

A progress event that is fired as files are downloaded or uploaded providing basic progress information as the upload proceeds.

AddCertificate

Allows you to add a client certificate for the request to allow for TLS connections with non-public certificates.

o.AddCertificate(lcCertFile)

ChangeDirectory

Changes the active directory on the FTP server. This affects how relative paths are handled.

o.ChangeDirectory(lcFtpPath)

Close

Closes the FTP connections.

o.wwFtpClient.Close

Connect

This establishes the initial connection to the server. The connection needs to stay open for any of the FTP operation commands.

o.Connect(lcServer, lcUsername, lcPassword)

CreateDirectory

Creates a new directory on the server.

o.CreateDirectory(lcPath)

DeleteDirectory

Deletes a directory from the FTP server.

o.wwFtpClient.DeleteDirectory(lcFtpPath)

DeleteFile

Deletes a file from the server.

o.wwFtpClient.DeleteFile(lcFtpPath)

DowloadFile

Downloads a file from the FTP server to a local file.

o.wwFtpClient.DowloadFile(lcFtpPath,lcLocalPath)

ExecuteCommand

FtpCommand

o.ExecuteCommand(lcCommand)

ExecuteDownloadCommand

ExecuteDownloadCommand

o.ExecuteDownloadCommand(lcCommand)

Exists

Checks to see if the remote file exists.

o.Exists(lcRemoteFile)

ListFiles

Retrieves a directory listing from the server with all files returned as a collection.

o.ListFiles(lcFtpPath)

UploadFile

Uploads a file to the server from a local file.

o.wwFtpClient.UploadFile(lcLocalFile, lcFtpPath)

cErrorMsg

Error message set after a method call that fails

cHttpProxyName

cLogFile

Optional log file that receives ftp log output.

cPassword

Password for authentication with the FTP server.

cServer

Domain name or IP address for the server

cUsername

Username for authentication against the FTP server.

lIgnoreCertificateErrors

Allows you to ignore certificate errors that due to expired, revoked or otherwise invalid certificates on the server.

lpassiveftp

Flag that determines whether to use passive or active FTP

lUseTls

Tsl used for this request (FTPS protocol: FTP over TLS)

nHttpProxyPort

nPort

The port to run the FTP connection on

nTimeout

Connection timeout in seconds.

oBridge

wwDotnetBridge Instance that interfaces with the wwFtpClient .NET instance.

oFtpClient

The .NET wwFtpClient instance that interfaces with the Fluent FTP library.

Requirements

Assembly: wwFtpClient.prg wwIpstuff.dll wwDotnetBridge.dll FluentFtp.dll

© West Wind Technologies, 2024 • Updated: 05/26/24
Comment or report problem with topic