Hallo !
Hiermit präsentiere ich euch meine FTP-Dateiablage!
Einfach die Daten des FTP Servers im Skript ändern, und schon könnt ihr mithilfe meines Programms die Dateien im GUI betrachten, und ggf. Files Up/Downloaden.
Ich nutzte dieses Programm, da es ein "kleiner" FTP-Client ist
Ich bitte um Kritik, ob es gelungen ist oder nicht
Hier einmal das Skript, und dann auch nochmal im Anhang!
Spoiler anzeigen
[autoit#RequireAdmin
#include <ListBoxConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <FTP_Ex.au3>
Global $server = "*************"
Global $username = "**********"
Global $pass = "**********"
Global $Open = _FTPOpen ("MyFTP Control")
Global $Conn = _FTPConnect ($Open, $server, $username, $pass)
Global $Filelist = _FTPFilesListTo2DArray ($Conn)
;Main
#Region ### START Koda GUI section ### Form=
$MainGui = GUICreate("Dateiablage", 625, 443, 352, 204)
$Header = GUICtrlCreateLabel("Dateiablage", 104, 24, 418, 42)
GUICtrlSetFont(-1, 24, 800, 0, "Lucida Fax")
$ListBox = GUICtrlCreateList("", 48, 96, 337, 292)
$DownloadButton = GUICtrlCreateButton("Download", 432, 136, 145, 57, 0)
GUICtrlSetFont(-1, 14, 800, 0, "Lucida Fax")
$UploadButton = GUICtrlCreateButton("Upload", 432, 288, 145, 57, 0)
GUICtrlSetFont(-1, 14, 800, 0, "Lucida Fax")
$Copyright = GUICtrlCreateLabel("Geschrieben von: PokerFace", 8, 424, 160, 17)
GUISetState(@SW_HIDE)
#EndRegion ### END Koda GUI section ###
;Child
#Region ### START Koda GUI section ### Form=
$ChildGui = GUICreate("Dateiablage", 483, 333, 376, 352,BitOR($WS_EX_TOOLWINDOW, $WS_EX_WINDOWEDGE))
$Durchsuchen = GUICtrlCreateButton("Datei auswählen...", 144, 8, 195, 49, 0)
GUICtrlSetFont(-1, 12, 800, 0, "Lucida Fax")
$UploadInput = GUICtrlCreateInput("", 48, 72, 385, 21)
$UploadButton2 = GUICtrlCreateButton("Upload!", 88, 136, 313, 57, 0)
GUICtrlSetFont(-1, 26, 800, 0, "Lucida Fax")
$Exit = GUICtrlCreateButton("Exit", 88, 224, 313, 57, 0)
GUICtrlSetFont(-1, 26, 800, 0, "Lucida Fax")
GUISetState(@SW_HIDE)
#EndRegion ### END Koda GUI section ###
For $i = 1 to UBound ($Filelist) -1
GUICtrlSetData ($ListBox, $Filelist [$i][0]&"|")
Next
GUISetState (@SW_SHOW, $MainGui)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
_FTPClose($Conn)
_FTPUnInit()
Exit
Case $DownloadButton
Global $DownFile = GUICtrlRead ($ListBox)
If $DownFile = "" Then
MsgBox (1, "Achtung!", "Erst eine Datei anklicken!")
Else
DirCreate (@ScriptDir&"\FTP Download")
_FTP_DownloadProgress($Conn, @ScriptDir&"\FTP Download\"&$DownFile, "/"&$DownFile)
EndIf
Case $Exit
GUISetState (@SW_HIDE, $ChildGui)
GUISetState (@SW_SHOW, $MainGui)
Case $UploadButton
GUISetState (@SW_HIDE, $MainGui)
GUISetState (@SW_SHOW, $ChildGui)
Case $Durchsuchen
Global $UploadPfad = FileOpenDialog ("Bitte die zu hochladende Datei auswählen!", "C:\", "All(*.*)")
GUICtrlSetData ($UploadInput, $UploadPfad)
Global $PfadGesplittet = StringSplit ($UploadPfad, "\")
Global $x = UBound ($PfadGesplittet) - 1
Global $DateiName = $PfadGesplittet[$x]
Case $UploadButton2
If $UploadPfad = "" Then
MsgBox (1, "Achtung!", "Erst eine Datei auswählen!")
Else
Global $UploadVorgang = _FTP_UploadProgress($Conn, $UploadPfad, "/"&$DateiName)
If $UploadVorgang = 1 Then
MsgBox (0, "Fertig!", "Die Datei wurde erfolgreich hochgeladen!")
Else
MsgBox (0, "Fehler!", "Es ist ein Fehler aufgetreten! Das Programm wird beendet!")
Exit
EndIf
EndIf
EndSwitch
WEnd
[/autoit]
Edit:
Die FTP_Ex.au3 aus dem dritten Post in diesem Thema wird auch benötigt !
Sie ist als Dateianhang auch nocheinmal hier rangehängt!