Class TCustomFtpCli (unit Ftpcli) |
Inherits from
TComponent
constructor Create(AOwner: TComponent);
- * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *} {* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *} {* * * *} {* * TCustomFtpCli * *} {* * * *} {* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *} {* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure AbortAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure AppendAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure AppendFileAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure CDupAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure ConnectAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure CwdAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DeleAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DeleteAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
destructor Destroy;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DirAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DirectoryAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DoQuoteAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure ExecAppendAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure ExecDirAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure ExecGetAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure ExecLsAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure ExecPutAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure FileSizeAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure GetAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure ListAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure LsAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure MkdAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure MkdirAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure OpenAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure PassAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure PutAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure PwdAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure QuitAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure QuoteAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure ReceiveAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure RenameAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure RenAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure RenFromAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure RenToAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure RestartGetAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure RestAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure RestGetAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure RmdAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure RmdirAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure SizeAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure SystAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure SystemAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure TransmitAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure TypeAsciiAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure TypeBinaryAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure TypeSetAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure UserAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure CheckReady;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure ControlSocketDataAvailable(Sender: TObject; Error: Word);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure ControlSocketDnsLookupDone(Sender: TObject; Error: Word);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure ControlSocketSessionClosed(Sender: TObject; Error: Word);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure ControlSocketSessionConnected(Sender: TObject; Error: Word);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DataSocketGetDataAvailable(Sender: TObject; Error : word);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DataSocketGetSessionAvailable(Sender: TObject; Error : word);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DataSocketGetSessionClosed(Sender: TObject; Error : word);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DataSocketGetSessionConnected(Sender: TObject; Error : word);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DataSocketPutDataAvailable(Sender: TObject; Error : word);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DataSocketPutDataSent(Sender: TObject; Error : word);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DataSocketPutSessionAvailable(Sender: TObject; Error : word);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DataSocketPutSessionClosed(Sender: TObject; Error : word);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DataSocketPutSessionConnected(Sender: TObject; Error : word);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DisplayLastResponse;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DoGetAsync(RqType : TFtpRequest);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *} { Receive a file or a directory list of a file list
procedure DoHighLevelAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DoneQuitAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DoPutAppendAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure ExecAsync(RqType : TFtpRequest;
Cmd : String;
OkResponses : array of Word;
DoneAsync : TFtpNextProc);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure ExtractMoreResults;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
function GetBinary : Boolean;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
function GetConnected : Boolean;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
function GetShareMode : TFtpShareMode;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure HighLevelAsync(RqType : TFtpRequest; Fcts : TFtpFctSet);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure Next1GetAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *} { We comes here when receiving the response for the RETR command we sent
procedure Next1PutAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *} { We comes here when receiving the response for the STOR command we sent
procedure Next2GetAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *} { We comes here when the FTP server has sent the file we asked to GET
procedure Next2PutAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *} { We comes here when the FTP server has received the file we sent (STOR)
procedure Next3GetAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *} { We comes here either if the file has been received of the FTP server has } { his response.
procedure Next3PutAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *} { We comes here when the file has been sent or when the FTP server tell us } { he recived the file.
procedure NextExecAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure Notification(AComponent: TComponent; Operation: TOperation);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure PortAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
function Progress : Boolean;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure SendCommand(Cmd : String);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure SetBinary(Value : Boolean);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure SetErrorMessage;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure SetShareMode(newValue : TFtpShareMode);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure StateChange(NewState : TFtpState);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure TransfertStats;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure TriggerDisplay(Msg : String);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure TriggerReadyToTransmit(var bCancel : Boolean);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure TriggerRequestDone(Error: Word);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure TriggerStateChange;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure WMFtpCloseData(var msg: TMessage);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure WMFtpRequestDone(var msg: TMessage);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure WndProc(var MsgRec: TMessage);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
property Binary : Boolean
property ByteCount : LongInt
property Connected : Boolean
property ControlSocket : TWSocket
property DataSocket : TWSocket
property DirResult : String
property DisplayFlag : Boolean
property ErrorMessage : String
property Handle : HWND
property HostDirName : String
property HostFileName : String
property HostName : String
property LastResponse : String
property LocalFileName : String
property Passive : Boolean
property PassWord : String
property Port : String
property RequestType : TFtpRequest
property ResumeAt : LongInt
property ShareMode : TFtpShareMode
property SizeResult : LongInt
property State : TFtpState
property StatusCode : LongInt
property UserName : String
event OnCommand : TFtpCommand
event OnDisplay : TFtpDisplay
event OnProgress : TFtpProgress
event OnReadyToTransmit : TFtpReadyToTransmit
event OnRequestDone : TFtpRequestDone
event OnResponse : TNotifyEvent
event OnSessionClosed : TSessionClosed
event OnSessionConnected : TSessionConnected
event OnStateChange : TNotifyEvent
FAppendFlag : Boolean;
FByteCount : LongInt;
FConnected : Boolean;
FControlSocket : TWSocket;
FDataSocket : TWSocket;
FDirResult : String;
FDisplayFlag : Boolean;
FDoneAsync : TFtpNextProc;
FError : Word;
FErrorMessage : String;
To save FStatusCode when quitting
FFctPrv : TFtpFct;
FFctSet : TFtpFctSet;
FFileReceived : Boolean;
FFileSent : Boolean;
FGetCommand : String;
To save Error when data connection closed
FHighLevelFlag : Boolean;
FHighLevelResult : Integer;
FHostDirName : String;
FHostFileName : String;
FHostName : String;
FLastResponse : String;
FLastResponseSave : String;
FLocalFileName : String;
FLocalStream : TStream;
FNext : TFtpNextProc;
FNextRequest : TFtpNextProc;
FOkResponses : array [0..15] of Integer;
FOnCommand : TFtpCommand;
FOnDisplay : TFtpDisplay;
FOnProgress : TFtpProgress;
FOnReadyToTransmit : TFtpReadyToTransmit;
FOnRequestDone : TFtpRequestDone;
FOnResponse : TNotifyEvent;
FOnSessionClosed : TSessionClosed;
FOnSessionConnected : TSessionConnected;
FOnStateChange : TNotifyEvent;
FPassive : Boolean;
FPassWord : String;
FPort : String;
FReceiveBuffer : array [0..FTP_RCV_BUF_SIZE - 1] of char;
FReceiveLen : Integer;
FRequestDoneFlag : Boolean;
FRequestResult : Integer;
FRequestType : TFtpRequest;
FRestartFlag : Boolean;
FResumeAt : LongInt;
FSendBuffer : array [0..BLOCK_SIZE - 1] of char;
FServerSaidDone : Boolean;
FShareMode : Word;
FSizeResult : LongInt;
FStartTime : LongInt;
FState : TFtpState;
FStatusCode : LongInt;
FStatusCodeSave : LongInt;
To save FLastResponse when quitting
FStopTime : LongInt;
FType : Char;
FUserName : String;
FWhenConnected : TFtpNextProc;
FWindowHandle : HWND;
constructor Create(AOwner: TComponent);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *} {* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *} {* * * *} {* * TCustomFtpCli * *} {* * * *} {* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *} {* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure AbortAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure AppendAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure AppendFileAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure CDupAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure ConnectAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure CwdAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DeleAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DeleteAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
destructor Destroy;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DirAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DirectoryAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DoQuoteAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure ExecAppendAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure ExecDirAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure ExecGetAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure ExecLsAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure ExecPutAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure FileSizeAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure GetAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure ListAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure LsAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure MkdAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure MkdirAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure OpenAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure PassAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure PutAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure PwdAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure QuitAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure QuoteAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure ReceiveAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure RenameAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure RenAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure RenFromAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure RenToAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure RestartGetAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure RestAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure RestGetAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure RmdAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure RmdirAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure SizeAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure SystAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure SystemAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure TransmitAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure TypeAsciiAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure TypeBinaryAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure TypeSetAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure UserAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure CheckReady;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure ControlSocketDataAvailable(Sender: TObject; Error: Word);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure ControlSocketDnsLookupDone(Sender: TObject; Error: Word);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure ControlSocketSessionClosed(Sender: TObject; Error: Word);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure ControlSocketSessionConnected(Sender: TObject; Error: Word);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DataSocketGetDataAvailable(Sender: TObject; Error : word);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DataSocketGetSessionAvailable(Sender: TObject; Error : word);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DataSocketGetSessionClosed(Sender: TObject; Error : word);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DataSocketGetSessionConnected(Sender: TObject; Error : word);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DataSocketPutDataAvailable(Sender: TObject; Error : word);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DataSocketPutDataSent(Sender: TObject; Error : word);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DataSocketPutSessionAvailable(Sender: TObject; Error : word);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DataSocketPutSessionClosed(Sender: TObject; Error : word);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DataSocketPutSessionConnected(Sender: TObject; Error : word);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DisplayLastResponse;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DoGetAsync(RqType : TFtpRequest);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *} { Receive a file or a directory list of a file list
procedure DoHighLevelAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DoneQuitAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure DoPutAppendAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure ExecAsync(RqType : TFtpRequest;
Cmd : String;
OkResponses : array of Word;
DoneAsync : TFtpNextProc);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure ExtractMoreResults;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
function GetBinary : Boolean;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
function GetConnected : Boolean;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
function GetShareMode : TFtpShareMode;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure HighLevelAsync(RqType : TFtpRequest; Fcts : TFtpFctSet);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure Next1GetAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *} { We comes here when receiving the response for the RETR command we sent
procedure Next1PutAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *} { We comes here when receiving the response for the STOR command we sent
procedure Next2GetAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *} { We comes here when the FTP server has sent the file we asked to GET
procedure Next2PutAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *} { We comes here when the FTP server has received the file we sent (STOR)
procedure Next3GetAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *} { We comes here either if the file has been received of the FTP server has } { his response.
procedure Next3PutAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *} { We comes here when the file has been sent or when the FTP server tell us } { he recived the file.
procedure NextExecAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure Notification(AComponent: TComponent; Operation: TOperation);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure PortAsync;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
function Progress : Boolean;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure SendCommand(Cmd : String);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure SetBinary(Value : Boolean);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure SetErrorMessage;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure SetShareMode(newValue : TFtpShareMode);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure StateChange(NewState : TFtpState);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure TransfertStats;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure TriggerDisplay(Msg : String);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure TriggerReadyToTransmit(var bCancel : Boolean);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure TriggerRequestDone(Error: Word);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure TriggerStateChange;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure WMFtpCloseData(var msg: TMessage);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure WMFtpRequestDone(var msg: TMessage);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
procedure WndProc(var MsgRec: TMessage);
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
property Binary : Boolean
property ByteCount : LongInt
property Connected : Boolean
property ControlSocket : TWSocket
property DataSocket : TWSocket
property DirResult : String
property DisplayFlag : Boolean
property ErrorMessage : String
property Handle : HWND
property HostDirName : String
property HostFileName : String
property HostName : String
property LastResponse : String
property LocalFileName : String
property Passive : Boolean
property PassWord : String
property Port : String
property RequestType : TFtpRequest
property ResumeAt : LongInt
property ShareMode : TFtpShareMode
property SizeResult : LongInt
property State : TFtpState
property StatusCode : LongInt
property UserName : String
event OnCommand : TFtpCommand
event OnDisplay : TFtpDisplay
event OnProgress : TFtpProgress
event OnReadyToTransmit : TFtpReadyToTransmit
event OnRequestDone : TFtpRequestDone
event OnResponse : TNotifyEvent
event OnSessionClosed : TSessionClosed
event OnSessionConnected : TSessionConnected
event OnStateChange : TNotifyEvent
FAppendFlag : Boolean;
FByteCount : LongInt;
FConnected : Boolean;
FControlSocket : TWSocket;
FDataSocket : TWSocket;
FDirResult : String;
FDisplayFlag : Boolean;
FDoneAsync : TFtpNextProc;
FError : Word;
FErrorMessage : String;
To save FStatusCode when quitting
FFctPrv : TFtpFct;
FFctSet : TFtpFctSet;
FFileReceived : Boolean;
FFileSent : Boolean;
FGetCommand : String;
To save Error when data connection closed
FHighLevelFlag : Boolean;
FHighLevelResult : Integer;
FHostDirName : String;
FHostFileName : String;
FHostName : String;
FLastResponse : String;
FLastResponseSave : String;
FLocalFileName : String;
FLocalStream : TStream;
FNext : TFtpNextProc;
FNextRequest : TFtpNextProc;
FOkResponses : array [0..15] of Integer;
FOnCommand : TFtpCommand;
FOnDisplay : TFtpDisplay;
FOnProgress : TFtpProgress;
FOnReadyToTransmit : TFtpReadyToTransmit;
FOnRequestDone : TFtpRequestDone;
FOnResponse : TNotifyEvent;
FOnSessionClosed : TSessionClosed;
FOnSessionConnected : TSessionConnected;
FOnStateChange : TNotifyEvent;
FPassive : Boolean;
FPassWord : String;
FPort : String;
FReceiveBuffer : array [0..FTP_RCV_BUF_SIZE - 1] of char;
FReceiveLen : Integer;
FRequestDoneFlag : Boolean;
FRequestResult : Integer;
FRequestType : TFtpRequest;
FRestartFlag : Boolean;
FResumeAt : LongInt;
FSendBuffer : array [0..BLOCK_SIZE - 1] of char;
FServerSaidDone : Boolean;
FShareMode : Word;
FSizeResult : LongInt;
FStartTime : LongInt;
FState : TFtpState;
FStatusCode : LongInt;
FStatusCodeSave : LongInt;
To save FLastResponse when quitting
FStopTime : LongInt;
FType : Char;
FUserName : String;
FWhenConnected : TFtpNextProc;
FWindowHandle : HWND;