2

我需要将文件上传到安全的 ftp 共享,我只知道来自 FILE ZILLA Ftp 客户端的配置数据。Protocoll 是 SSH , 安全的 FTP

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?> 
 - <FileZilla3>
 - <Servers>
 - <Server>
 <Host>example.com</Host> 
 <Port>22</Port> 
 <Protocol>1</Protocol> 
 <Type>0</Type> 
 <User>Username-FTP</User> 
 <Pass>*************/Pass> 
 <Logontype>1</Logontype> 
 <TimezoneOffset>0</TimezoneOffset> 
 <PasvMode>MODE_DEFAULT</PasvMode> 
 <MaximumMultipleConnections>0</MaximumMultipleConnections> 
 <EncodingType>Auto</EncodingType> 
 <BypassProxy>0</BypassProxy> 
 <Name>Ftp_sharename</Name> 
 <Comments /> 
 <LocalDir /> 
 <RemoteDir>8 0 15 dsd_dir</RemoteDir> 
 <SyncBrowsing>0</SyncBrowsing> 
  Ftp_server_name
   </Server>
   </Servers>
 </FileZilla3>

像这样的代码

 procedure TForm1.btnConnectClick(Sender: TObject);
 begin
  if IdFTP1.Connected then
  begin
  IdFtp1.Disconnect;
  btnConnect.Caption := 'Verbinden';
  ListBox1.Clear;
 end
 else begin
 IdFTP1.Host := edHost.Text;
 IdFtp1.Username := edUser.Text;
 IdFtp1.Password := edPassword.Text;
 IdFtp1.Port := StrToINt(edport.Text);
 IdFtp1.Connect;
 end;
end;

使用 INDY 10 - IdFTP1:TIdFTP;运气不太好。没有发现我的 Delphi 有任何更好的功能。

4

1 回答 1

3

SFTP(基于 SSH 的 FTP)不同于FTPS(基于 SSL/TLS 的 FTP)。目前,Indy 根本不支持 SSH。 TIdFTP但是,确实支持 FTPS。

于 2013-08-09T07:18:02.933 回答