Sample code for 30+ languages & platforms
Xbase++

Ftp2 Debug Log File Path

See more FTP Examples

Demonstrates how to use the DebugLogFilePath property to get information if a Chilkat method crashes or hangs.

Chilkat Xbase++ Downloads

Xbase++
LOCAL nSuccess
LOCAL oFtp
LOCAL cRemoteFilePath
LOCAL cLocalFilePath

nSuccess := 0

oFtp := CreateObject("Chilkat.Ftp2")

//  ...
//  ...

//  Insert this code just before the method call that crashes or hangs.
oFtp:VerboseLogging := 1
oFtp:DebugLogFilePath := "/some/file/path/sftp_debug_log.txt"

//  Make the call that crashes or hangs,
//  for example, if the method is PutFile:

cRemoteFilePath := "..."
cLocalFilePath := "..."
nSuccess := oFtp:PutFile(cLocalFilePath, cRemoteFilePath)

//  Note: If the method returns control to your application code, then it did not crash within Chilkat.
//  The DebugLogFilePath property causes all information that would be recorded in the LastErrorText to be emitted to the
//  log file (with immediate file write flushing, i.e. no buffering).  Thus, in a crash situation,
//  the log file will contain information up to the point of the crash.

IF (nSuccess == 0)
    ? oFtp:LastErrorText
    oFtp:destroy()
    RETURN
ENDIF

oFtp:destroy()