Skip to main content
Skip table of contents

FTPDownload()

FTPDownload() – Downloaden eines Files von einem FTP-Server

Die Funktion lädt eine oder mehrere Dateien von einem FTP-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).

ParameterBeschreibung

aCaption:C

Titel

aRemoteHost:C

IP oder Domain des Hosts

aRemotePort:N

Port des Hosts

aUserName:C

User-Name

aPassword:C

Password

aPassiveMode:L

Passiver Übertragungsmodus

aFileList:U

Liste der Dateien

aHostPath:C

RemotePath; default = Leerstring

aLogFileName:C

Logfile schreiben; default = Leerstring

aIncludeHostDir:L

Directorylist in TraceFile; default = false

aTransferBinary:L

setzt den Transfertyp auf BINARY/ACSII, default = true = BINARY

lShowMsg:LExceptions statt Messages; default = false
aQuietMode:LKein Dialog anzeigen. Wenn in beas benutzt wird, ist aQuietMode IMMER true

Rückgabewert

Numerisch

  • 0 für korrekte Ausführung, ansonsten Fehler-Code
  • 1 für Verbindungsfehler
  • 2 für Fehler beim Verzeichniswechsel
  • 3 u.a Datei nicht gefunden
  • 5 für Vorgang abgebrochen
    Achtung: FTP-Fehler können auch eine Exception auslösen!

Beispiel

CODE
| aResult, i, j, aHostFiles, aHostPath, aSourcePath,
  aDestPath, aDestFile, aFileExt, aLogFile, aGetFiles, aLogTxt |

function ErrChk(aErrNo)
   if aErrNo <> 0 then
      ShowMessage('Error ' + Str(aErrNo)),
      Abort(),
   endif,
end,

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(aGetFiles),
  ErrChk(aResult := FTPDownload('Hole Dateien vom FTP-Server',                // Überschrift
                                '192.168.10.152',                             // RemoteHost
                                21,                                           // RemotePort
                                'beuser',                                     // UserName
                                'be32',                                       // Password
                                .t.,                                          // PassivMode
                                {'C:\SICHERUNG\FTP_Test\BigDataDownload.pdf',
                                'C:\SICHERUNG\FTP_Test\DataDownload.pdf',
                                'C:\SICHERUNG\FTP_Test\TextDownload.txt'},    // ResultDir
                                aHostPath,                                    // HostPath
                                aLogFile)),                                   // LogFileName

onerror,
   aResult := -1,
stopseq,

if !Empty(aResult) and LoadArray(aLogTxt, aLogFile) then
   WriteLn(aLogTxt)
endif,
aResult
JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.