Pascal (Lazarus/Delphi)
Pascal (Lazarus/Delphi)
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 Pascal (Lazarus/Delphi) Downloads
program ChilkatDemo;
// Demonstrates using the Chilkat Pascal wrapper via the C bridge DLL.
// Builds as a console application under Lazarus (FPC) or Delphi.
{$IFDEF FPC}
{$MODE DELPHI}
{$ENDIF}
{$APPTYPE CONSOLE}
uses
{$IFDEF UNIX}
cthreads,
{$ENDIF}
SysUtils,
CkDllLoader,
Chilkat.Ftp2;
// ---------------------------------------------------------------------------
procedure RunDemo;
var
success: Boolean;
ftp: TFtp2;
remoteFilePath: string;
localFilePath: string;
begin
success := False;
ftp := TFtp2.Create;
// ...
// ...
// Insert this code just before the method call that crashes or hangs.
ftp.VerboseLogging := True;
ftp.DebugLogFilePath := '/some/file/path/sftp_debug_log.txt';
// Make the call that crashes or hangs,
// for example, if the method is PutFile:
remoteFilePath := '...';
localFilePath := '...';
success := ftp.PutFile(localFilePath,remoteFilePath);
// 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 (success = False) then
begin
WriteLn(ftp.LastErrorText);
Exit;
end;
ftp.Free;
end;
// ---------------------------------------------------------------------------
begin
try
RunDemo;
except
on E: Exception do
WriteLn('Unhandled exception: ', E.ClassName, ': ', E.Message);
end;
WriteLn;
{$IFDEF MSWINDOWS}
WriteLn('Press Enter to exit...');
ReadLn;
{$ENDIF}
end.