Function FileList(Folder$,Sorted=False,lowcase=True) File_Bank=CreateDynamicStringArray() Dir_Bank=CreateDynamicStringArray() FilAnz=0 DirAnz=1 PutDynamicStringArray(Dir_Bank,DirAnz,Folder$) DirPtr=0 Repeat DirPtr=DirPtr+1 If GetDynamicStringArray$(Dir_Bank,DirPtr)="" Then Exit MyDir=ReadDir(GetDynamicStringArray(Dir_Bank,DirPtr)) Repeat file$=NextFile$(MyDir) If file$="" Then Exit If file$="." Goto GetFileNames1 If file$=".." Goto GetFileNames1 If FileType(GetDynamicStringArray$(Dir_Bank,DirPtr)+"\"+file$)=1 Then FilAnz=FilAnz+1 If lowcase=True Then PutDynamicStringArray(File_Bank,FilAnz,Lower(GetDynamicStringArray$(Dir_Bank,DirPtr)+"\"+File$)) Else PutDynamicStringArray(File_Bank,FilAnz,GetDynamicStringArray$(Dir_Bank,DirPtr)+"\"+File$) EndIf EndIf If FileType(GetDynamicStringArray(Dir_Bank,DirPtr)+"\"+file$)=2 Then DirAnz=DirAnz+1 PutDynamicStringArray(Dir_Bank,DirAnz,GetDynamicStringArray$(Dir_Bank,DirPtr)+"\"+File$) EndIf .GetFileNames1 Forever CloseDir MyDir Forever FreeDynamicStringArray(Dir_Bank) If Sorted<>False Then flag=1 Ab=2 Bis=FilAnz While Flag>0 Flag=0 For i=Ab To Bis If CompareDynamicStringArray(File_Bank,i,i-1)=-1 Then SwapDynamicStringArray(File_Bank,i,i-1) Flag=i EndIf Next If Flag>0 Then Bis=Flag For i=Bis To Ab Step -1 If CompareDynamicStringArray(File_Bank,i,i-1)=-1 Then SwapDynamicStringArray(File_Bank,i,i-1) Flag=i EndIf Next If Flag>0 Then Ab=Flag Wend EndIf Return File_Bank End Function