📄 ftpsrv.pas
字号:
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandPASS(Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandQUIT(Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandNOOP(Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandLIST(Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandNLST(Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandDELE(Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandSIZE(Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandREST(Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandRNFR(Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandRNTO(Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandPORT(Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandSTOR(Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandRETR(Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandTYPE(Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandCWD (Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandChangeDir(Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandMKD (Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandRMD (Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandCDUP(Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandXPWD(Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandPWD (Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandSYST(Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandABOR(Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandPASV(Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandAPPE(Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandSTRU(Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandMDTM(Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandMODE(Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandOverflow(Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandSTOU(Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandFEAT(Client : TFtpCtrlSocket;
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandMLST(Client : TFtpCtrlSocket; { angus V1.38 }
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandMLSD(Client : TFtpCtrlSocket; { angus V1.38 }
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
procedure CommandMD5 (Client : TFtpCtrlSocket; { angus V1.39 }
var Keyword : TFtpString;
var Params : TFtpString;
var Answer : TFtpString); virtual;
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
procedure Start;
procedure Stop;
procedure Disconnect(Client : TFtpCtrlSocket);
procedure DisconnectAll;
procedure DoStartSendData(Client: TFtpCtrlSocket); virtual;
procedure WndProc(var MsgRec: TMessage);
{ Check if a given object is one of our clients }
function IsClient(SomeThing : TObject) : Boolean;
property ServSocket : TWSocket read FServSocket;
property Handle : HWND read FWindowHandle;
property ClientCount : Integer read GetClientCount;
property Active : Boolean read GetActive
write SetActive;
property ClientClass : TFtpCtrlSocketClass
read FClientClass
write FClientClass;
{ Client[] give direct access to anyone of our clients }
property Client[nIndex : Integer] : TFtpCtrlSocket
read GetClient;
published
property Addr : String read FAddr
write FAddr;
property Port : String read FPort
write FPort;
property Banner : String read FBanner
write FBanner;
property UserData : LongInt read FUserData
write FUserData;
property MaxClients : LongInt read FMaxClients
write FMaxClients;
property PasvIpAddr : String read FPasvIpAddr
write FPasvIpAddr;
property PasvPortRangeStart : Integer read FPasvPortRangeStart
write SetPasvPortRangeStart;
property PasvPortRangeSize : Integer read FPasvPortRangeSize
write SetPasvPortRangeSize;
property Options : TFtpsOptions
read FOptions
write FOptions;
property OnStart : TNotifyEvent
read FOnStart
write FOnStart;
property OnStop : TNotifyEvent
read FOnStop
write FOnStop;
property OnAuthenticate : TFtpSrvAuthenticateEvent
read FOnAuthenticate
write FOnAuthenticate;
property OnClientDisconnect : TFtpSrvClientConnectEvent
read FOnClientDisconnect
write FOnClientDisconnect;
property OnClientConnect : TFtpSrvClientConnectEvent
read FOnClientConnect
write FOnClientConnect;
property OnClientCommand : TFtpSrvClientCommandEvent
read FOnClientCommand
write FOnClientCommand;
property OnAnswerToClient : TFtpSrvAnswerToClientEvent
read FOnAnswerToClient
write FOnAnswerToClient;
property OnChangeDirectory : TFtpSrvChangeDirectoryEvent
read FOnChangeDirectory
write FOnChangeDirectory;
property OnMakeDirectory : TFtpSrvChangeDirectoryEvent
read FOnMakeDirectory
write FOnMakeDirectory;
property OnBuildDirectory : TFtpSrvBuildDirectoryEvent
read FOnBuildDirectory
write FOnBuildDirectory;
property OnAlterDirectory : TFtpSrvBuildDirectoryEvent
read FOnAlterDirectory
write FOnAlterDirectory;
property OnStorSessionConnected : TFtpSrvDataSessionConnectedEvent
read FOnStorSessionConnected
write FOnStorSessionConnected;
property OnRetrSessionConnected : TFtpSrvDataSessionConnectedEvent
read FOnRetrSessionConnected
write FOnRetrSessionConnected;
property OnStorSessionClosed : TFtpSrvDataSessionConnectedEvent
read FOnStorSessionClosed
write FOnStorSessionClosed;
property OnRetrSessionClosed : TFtpSrvDataSessionConnectedEvent
read FOnRetrSessionClosed
write FOnRetrSessionClosed;
property OnRetrDataSent : TFtpSrvRetrDataSentEvent
read FOnRetrDataSent
write FOnRetrDataSent;
property OnValidatePut : TFtpSrvValidateXferEvent
read FOnValidatePut
write FOnValidatePut;
property OnValidateSize : TFtpSrvValidateXferEvent
read FOnValidateSize
write FOnValidateSize;
property OnValidateDele : TFtpSrvValidateXferEvent
read FOnValidateDele
write FOnValidateDele;
property OnValidateRmd : TFtpSrvValidateXferEvent
read FOnValidateRmd
write FOnValidateRmd;
property OnValidateRnFr : TFtpSrvValidateXferEvent
read FOnValidateRnFr
write FOnValidateRnFr;
property OnValidateRnTo : TFtpSrvValidateXferEvent
read FOnValidateRnTo
write FOnValidateRnTo;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -