Sample code for 30+ languages & platforms
Delphi DLL

DetermineSettings

See more FTP Examples

Determines what combinations of FTP2 property settings result in successful data transfers. DetermineSettings tries 13 different combinations of these properties: Ssl, AuthTls, AuthSsl, Port, Passive, and PassiveUseHostAddr. Within the FTP protocol, the process of fetching a directory listing is also considered a "data transfer". The DetermineSettings method works by checking to see which combinations result in a successful directory listing download. The method takes no arguments and returns a string containing an XML report of the results. It is a blocking call that may take approximately a minute to run. If you are unsure about how to interpret the results, cut-and-paste it into an email and send it to support@chilkatsoft.com.

Chilkat Delphi DLL Downloads

Delphi DLL
uses
    Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
    Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Ftp2;

...

procedure TForm1.Button1Click(Sender: TObject);
var
success: Boolean;
ftp: HCkFtp2;
xmlReport: PWideChar;

begin
success := False;

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

ftp := CkFtp2_Create();

CkFtp2_putHostname(ftp,'ftp.example.com');
CkFtp2_putUsername(ftp,'example-code.com');
CkFtp2_putPassword(ftp,'****');

xmlReport := CkFtp2__determineSettings(ftp);
Memo1.Lines.Add(xmlReport);

success := CkFtp2_Disconnect(ftp);

CkFtp2_Dispose(ftp);

end;