Sample code for 30+ languages & platforms
PowerBuilder

Using the FTP Session Log

See more FTP Examples

The Chilkat FTP component can keep a session log if the KeepSessionLog property is turned on. This is helpful in debugging problems. Chilkat support will usually ask for a session log when working to resolve your problem, because it contains a log of the exact commands sent to the FTP server, and the exact responses received.

Chilkat PowerBuilder Downloads

PowerBuilder
integer li_rc
integer li_Success
oleobject loo_Ftp
string ls_LocalFilename
string ls_RemoteFilename

li_Success = 0

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

loo_Ftp = create oleobject
li_rc = loo_Ftp.ConnectToNewObject("Chilkat.Ftp2")
if li_rc < 0 then
    destroy loo_Ftp
    MessageBox("Error","Connecting to COM object failed")
    return
end if

loo_Ftp.Hostname = "ftp.example.com"
loo_Ftp.Username = "login"
loo_Ftp.Password = "password"

// Set the KeepSessionLog property in order to keep a session log.
// The session log will continuously grow in memory.  The
// ClearSessionLog method may be called to clear it.  The session
// logging may be turned on/off at any point.
loo_Ftp.KeepSessionLog = 1

// Connect and login to the FTP server.
li_Success = loo_Ftp.Connect()
if li_Success <> 1 then
    Write-Debug loo_Ftp.LastErrorText
    destroy loo_Ftp
    return
end if

// Change to the remote directory where the existing file is located.
li_Success = loo_Ftp.ChangeRemoteDir("junk")
if li_Success <> 1 then
    Write-Debug loo_Ftp.LastErrorText
    destroy loo_Ftp
    return
end if

// To clear the SessionLog at any point, call ClearSessionLog:
// call ftp.ClearSessionLog();

// Append moreHamlet.txt to hamlet.txt on the FTP server.
ls_LocalFilename = "moreHamlet.txt"
ls_RemoteFilename = "hamlet.txt"

li_Success = loo_Ftp.AppendFile(ls_LocalFilename,ls_RemoteFilename)
if li_Success <> 1 then
    Write-Debug loo_Ftp.LastErrorText
    destroy loo_Ftp
    return
end if

li_Success = loo_Ftp.Disconnect()

// Display the entire session log:
Write-Debug loo_Ftp.SessionLog

Write-Debug "File Appended!"


destroy loo_Ftp