Hallo, ich habe hier ein kleines Script zum Downloaden von MP3 Datein vin meinem Server
Nun sind in dem Verzeichniss auch andere Dateien, es sollen aber nur "*.mp3" Dateien in der FileListe auftauchen.
Hier mal des Script:
C
#include <Misc.au3>
#include <FTPEx.au3>
#include <array.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <GUIListView.au3>
#include <GuiButton.au3>
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <ListViewConstants.au3>
#include <StaticConstants.au3>
Opt('MustDeclareVars', 1)
Global $ListView1, $Dirlist1, $Label3, $Label4, $hot, $datum, $npfad, $Button1, $item1, $item2, $item3, $input1, $msg, $Server, $Username, $Passwort, $Path, $Ziel, $Open, $Conn, $SetDir, $DirList, $Item, $file, $file1, $Form1, $Label1, $Label2, $Button2
$Server = IniRead("config.ini", "Server", "IP", "")
$Username = IniRead("config.ini", "Server", "User", "")
$Passwort = IniRead("config.ini", "Server", "Passwort", "")
$Path = IniRead("config.ini", "Server", "Ordner", "")
$Ziel = IniRead("config.ini", "Server", "Ziel", "")
$Open = _FTP_Open('FTP-OTR')
$Conn = _FTP_Connect($Open, $Server, $Username, $Passwort, true)
$SetDir = _FTP_DirSetCurrent($Conn, $Path)
$DirList = _Ftp_ListToArray($Conn,2)
$Dirlist1 = _ArraySearch($DirList, "*.mp3")
If $Dirlist1 = 0 Then
MsgBox(0, "", "Keine Dateien auf dem Server vorhanden", 5)
Exit
Else
Example()
EndIf
Func Example()
GUICreate("RNI - News und Wetter", 237, 474, 335, 147, -1, $WS_EX_ACCEPTFILES)
GUISetBkColor(0x002142) ; will change background color
$ListView1 = GUICtrlCreateListView("Datei", 8, 48, 218, 302)
_GUICtrlListView_SetColumnWidth($ListView1, 0, $LVSCW_AUTOSIZE_USEHEADER)
GUICtrlSetFont(-1, 12, 800, 0, "MS Sans Serif")
GUICtrlSetCursor (-1, 0)
$Button1 = GUICtrlCreateButton("Herunterladen", 8, 360, 100, 25)
$Label1 = GUICtrlCreateLabel("RNI - News und Wetter", 24, 16, 188, 24)
GUICtrlSetFont(-1, 12, 800, 0, "MS Sans Serif")
GUICtrlSetColor(-1, 0xC0C0C0)
$Input1 = GUICtrlCreateInput("Input1", 8, 416, 217, 21)
GUICtrlSetData(-1, $Ziel)
GUICtrlSetState(-1, $GUI_DISABLE)
$Label2 = GUICtrlCreateLabel("Speicherort:", 8, 400, 61, 17)
GUICtrlSetColor(-1, 0xC0C0C0)
$Button2 = GUICtrlCreateButton("Ändern", 8, 440, 75, 25)
$Label3 = GUICtrlCreateLabel("Datum:", 120, 360, 36, 17)
GUICtrlSetColor(-1, 0xC0C0C0)
$Label4 = GUICtrlCreateLabel(@MDAY&"."&@MON&"."&@YEAR, 160, 360, 66, 17)
GUICtrlSetColor(-1, 0xC0C0C0)
For $i = 1 To $DirList1[0]
$item1= GUICtrlCreateListViewItem($Dirlist1[$i], $ListView1)
Next
GUICtrlSetState(-1, $GUI_DROPACCEPTED) ; to allow drag and dropping
GUISetState()
Do
$msg = GUIGetMsg()
Select
Case $msg = $Button1
$file=GUICtrlRead(GUICtrlRead($ListView1))
$file1=StringTrimRight($file, 1)
_FTP_ProgressDownload($Conn, $Ziel&$file1, $file1)
_GUICtrlListView_DeleteItemsSelected($ListView1)
Case $msg = $ListView1
MsgBox(0, "listview", "clicked=" & GUICtrlGetState($ListView1), 2)
Case $msg = $Button2
$npfad=FileSelectFolder("Verzeichniss zum Speichern auswählen.", "")
IniWrite("config.ini", "Server", "Ziel", $npfad&"\")
GUICtrlSetData($Input1, $npfad&"\")
$Ziel=$npfad&"\"
EndSelect
Until $msg = $GUI_EVENT_CLOSE
_FTP_Close($Conn)
_FTP_Close($Open)
EndFunc ;==>Example
Alles anzeigen
wäre schön wenn mir hier jemand weiter helfen könnte
Gruß Rene