Ich habe das problem das bei meinem Script der Fehler : "Subscript used with non Array variable" auftaucht. Der Fehler ist angeblich auf Linie 25 aber _FTP_ListToArrayEx müsste eigentlich ein Array zurückgeben sogar bei einem Fehler und ich bin mir sicher das die Connection Stimmt.
Ich hoffe ihr könnt mir Helfen
Ja ich weis ich könnte das auch kürzer machen aber für`n Momment is es so okey also bitte unterlasst diesbezügliche Kommentare
Script:
Code:
#include-once
#cs ----------------------------------------------------------------------------
AutoIt Version: 3.3.8.0
Author: myName
Script Function:
Template AutoIt script.
#ce ----------------------------------------------------------------------------
; Script Start - Add your code below here
#include <File.au3>
#include <Array.au3>
#include <FTPEx.au3>
Func _FTPDir_ListToArrayEx ($FTPSession, $Path, $Flag = 0)
Local $Dir_Paths[1], $File_Paths[1], $c = 0
$SetDir = _FTP_DirSetCurrent ($FTPSession, $Path)
$Main_DirFile_List = _FTP_ListToArrayEx ($FTPSession)
For $i = 1 To $Main_DirFile_List[0][0] Step 1
If StringInStr ($Main_DirFile_List[$i][2], "D") Then
$Dir_Paths[0] = $Dir_Paths[0]+1
_ArrayAdd ($Dir_Paths, $Path&"\"&$Main_DirFile_List[$i][0])
Else
$File_Paths[0] = $File_Paths[0]+1
_ArrayAdd ($File_Paths, $Path&"\"&$Main_DirFile_List[$i][0])
EndIf
Next
$nofDirs = DirGetSize ($Path, 1)
For $i2 = 1 To $nofDirs[2] Step 1
_FTP_DirSetCurrent ($FTPSession, $Dir_Paths[$i2])
$Temp_DirFile_List =_FTP_ListToArrayEx ($FTPSession)
If $Temp_DirFile_List <> 0 Then
For $i3 = 1 To $Temp_DirFile_List[0] Step 1
If StringInStr ($Temp_DirFile_List[$i3][2], "D") Then
$Dir_Paths[0] = $Dir_Paths[0]+1
_ArrayAdd ($Dir_Paths, $Dir_Paths[$i2]&"\"&$Temp_DirFile_List[$i3][0])
Else
$File_Paths[0] = $File_Paths[0]+1
_ArrayAdd ($File_Paths, $Dir_Paths[$i2]&"\"&$Temp_DirFile_List[$i3][0])
EndIf
Next
EndIf
Next
If $Flag = 0 Then
Return $File_Paths
ElseIf $Flag = 1 Then
Return $Dir_Paths
EndIf
EndFunc