SFTPDownload()
SFTPDownload() – Downloaden eines Files von einem SFTP-Server
Die Funktion lädt eine oder mehrere Dateien von einem SFTP-Server herunter.
Die Funktion arbeitet case sensitive (trifft auch auf die Endungen der Dateien zu), außerdem wird die Datei auch im Fehlerfall lokal erstellt (0 kB).
Hinweis
Falls die Dateinamen innerhalb der Liste einen absoluten Pfad enthalten, dann wird aHostPath überflüssig sein.
Falls die Dateinamen innerhalb der Liste einen relativen Pfad enthalten, ist der Pfad relativ gegen aHostPath, wenn aHostPath angegeben wurde.
Remote Pfad aHostPath und Remote-Dateinamen innerhalb der Liste müssen als Verzeichnis-Separator Schrägstrich und nicht Backslash verwenden, z.B: user/sub/date/datei.ext
Achtung: SFTP-Fehler wird eine Exception auslösen!
Parameter | Beschreibung |
---|---|
aRemoteHost:C | IP oder Domain des Hosts |
aRemotePort:N | Port des Hosts. Typisch 22 |
aUserName:C | User-Name |
aPassword:C | Password |
aFileList:U | Liste der lokale Ziel-Dateien |
aHostPath:C | RemotePath; default = Leerstring |
aLogFileName:C | Logfile schreiben; default = Leerstring |
aVerifyServerKey:L | Soll Server-Key Verifiziert werden? (für CB-Ereignis "Verifizierung von SSL Zertifikat") default = true |
Rückgabewert
Keine
Beispiel
| aHostPath, aSourcePath, aDestPath, aLogFile, aGetFiles, aLogTxt |
aLogFile := 'C:\SICHERUNG\FTP_Test\MyFtpLog.txt',
aDestPath := 'C:\SICHERUNG\FTP_Test\Download\',
aSourcePath := 'C:\SICHERUNG\FTP_Test\Upload\',
aHostPath := 'Test',
if File(aLogFile) then
DeleteFile(aLogFile),
endif,
startseq,
WriteLn('Beispiel: Datei vom SFTP Server downloaden ...'),
SFTPDownload('192.168.10.152', // RemoteHost
22, // RemotePort
'beuser', // UserName
'be32', // Password
{ // Liste der localen Target-Dateien, die zu downloaden sind
aDestPath + 'BigDataDownload.pdf', // 'BigDataDownload.pdf' wird auf dem Server im aHostPath gesucht
{aDestPath + 'DataDownload.pdf','New-DataDownload.pdf'}, // 'New-DataDownload.pdf' wird auf dem Server im aHostPath gesucht
{aDestPath + 'TextDownload.txt', '../TextDownload.txt'} // 'TextDownload.txt' wird auf dem Server im übergeordneten Verzeichnis des aHostPath gesucht
},
aHostPath, // HostPath
aLogFile), // LogFileName
onerror,
GU_ShowStdErrorMessage('SFTP Error ' + ProgName(), GetErrorObj() ),
stopseq,