_FTPfilestoarray fehler

  • Hi

    Ich kenn keine _FTPListFiles nur eine _FTPFilesListToArray
    ;===============================================================================
    ;
    ; Function Name: _FtpFileListtoArray()
    ; Description: Get Filenames, Directorys, or Both of a Directory.
    ; Parameter(s): $l_FTPSession - Long From _FileConnect
    ; $Return_type - 0 = Both Files and Directorys, 1 = Directorys, 2 = Files
    ; Requirement(s): DllCall, wininet.dll
    ; Return Value(s): On Success - 1
    ; On Failure - 0
    ; Author(s): Beast, Prog@ndy
    ;
    ;===============================================================================

    Eine Funktion die ich geschrieben habe um den Inhalt eines FTP Servers herunter zu laden.
    Beinhaltet _FtpFileListtoArray()

    Spoiler anzeigen
    [autoit][/autoit] [autoit][/autoit] [autoit]

    #include <ftp.au3>

    [/autoit] [autoit][/autoit] [autoit]

    $server = "ftpserver"
    $username = "Mustermann"
    $pass = "maxl"
    $Open = _FTPOpen("MyFTP_Control")
    $Conn = _FTPConnect($Open, $server, $username, $pass)
    _FTPGetFolderContents($Conn, "/" , "c:\Temp\ftp", "1") ; FTP Serververbindung angeben, FtpOrdner, Verzeichnis in das der Inhalt des FTP Servers gespeichert werden soll, ob auch Unterordner heruntergeladen werden sollen

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Func _FTPGetFolderContents($l_InternetSession, $s_RemoteFolder , $s_LocalFolder, $b_RecursivePut)
    Local $i
    Local $count = 1
    _FtpSetCurrentDir($l_InternetSession, $s_RemoteFolder)
    If @error Then Return SetError(1,0,0)

    ; Shows the filenames of all files in the current directory.
    Local $ftpfileslist = _FTPFilesListToArray($l_InternetSession,2)

    [/autoit] [autoit][/autoit] [autoit]

    ; Check if the search was successful
    If Not IsArray($ftpfileslist) Then
    Return SetError(1,0,0)
    EndIf

    If $ftpfileslist[0] Then
    While $ftpfileslist[0] >= $count
    _FTPGetFile($l_InternetSession, $ftpfileslist[$count], $s_LocalFolder & "\" & $ftpfileslist[$count])
    $count += 1
    WEnd
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    If $b_RecursivePut Then
    ; Shows the foldernames of all folders in the current directory.
    Local $ftpdirlist = _FTPFilesListToArray($l_InternetSession,1)
    If Not IsArray($ftpdirlist) Then
    Return SetError(1,0,0)
    EndIf
    If $ftpdirlist[0] Then
    For $i = 1 To $ftpdirlist[0]
    If $ftpdirlist[$i] = "." Or $ftpdirlist[$i] = ".." Then
    Else
    DirCreate($s_LocalFolder & "\" & $ftpdirlist[$i])
    _FTPGetFolderContents($l_InternetSession, $s_RemoteFolder & "/" & $ftpdirlist[$i], $s_LocalFolder & "\" & $ftpdirlist[$i], $b_RecursivePut)
    EndIf
    Next
    EndIf
    EndIf
    Return 1
    EndFunc ;==>_FTPGetFolderContents

    [/autoit]

    If not :?: then ?( else :thumbup: