OpenFtp_v2.5.exe

  • Hi,

    folgende Situation. Ich habe meinen alten Pc zu nem Ftp-Server umfunktioniert. Weil bei uns aber aus irgendeinem mir unbefindlichem Grund die Netzwerkfunktion von Windows nicht funktioniert :D , musste ich immer über die Eingabeaufforderung auf den Server zugreifen. Das wurde mir dann aber zu aufwändig. Klar hätte ich Tools wie RealVNC oder dergleichen verwenden können, aber das ist nicht das richtige "Feeling" ^^ . Und deshalb hab ich mir ein kleines, für mich brauchbares, Script geschrieben.
    OpenFtp_v2.5.exe

    Spoiler anzeigen
    [autoit]


    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <String.au3>
    #include <Ftp_Ex.au3>

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

    If FileExists( "date.can" ) Then
    $strg_co = iniread ( "date.can", "Strg", "thestrg", "NotFound" )
    $strg =_HexToString ($strg_co)

    $username_read = iniRead ( "date.can", "DatenN", "Name", "NotFound" )
    $deco_user = _StringEncrypt(0, $username_read, $strg, 3)

    $passwd_read = iniRead ( "date.can", "DatenP", "Pass", "NotFound" )
    $deco_pass = _StringEncrypt(0, $passwd_read, $strg, 3)

    $ip_read = iniRead ( "date.can", "DatenI", "Ip", "NotFound" )
    $deco_ip = _StringEncrypt(0, $ip_read, $strg, 3)

    $Ftp = GUICreate("Ftp-Server", 250, 200, 411, 284)
    $de = GUICtrlCreateButton("Datei empfangen", 60, 20, 140, 25, 0)
    $ds = GUICtrlCreateButton("Datei senden", 60, 60, 140, 25, 0 )
    $Verbinden = GUICtrlCreateButton("Verbinden", 80, 100, 100, 25, 0)
    $About = GUICtrlCreateButton("About", 80, 140, 100, 25, 0)
    GUISetState(@SW_SHOW)

    $user = $deco_user
    $pass = $deco_pass
    $ip = $deco_ip

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


    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

    Case $Verbinden

    $Ftp_e_s = GUICreate("Verbinden", 257, 171, 411, 284)
    $List_des = GUICtrlCreateList("", 32, 40, 113, 84)
    GUICtrlSetData(-1, "C:\|C:\Dok. und Eins.\|C:\Programme\|C:\...\Server\")
    $go = GUICtrlCreateButton("Go", 160, 96, 75, 25, 0)
    GUISetState(@SW_SHOW)

    While 2
    $nMsg1 = GUIGetMsg()
    Switch $nMsg1
    Case $GUI_EVENT_CLOSE
    Exit
    Case $go
    $auswahl = GUICtrlRead ( $List_des )
    Select
    Case $auswahl = "C:\"
    Run ( "ftp" )
    Sleep ( 500 )
    Send ( "open " )
    Send ($ip)
    Send ( "{EntEr}" )
    Sleep ( 200 )
    Send ( $user )
    Send ( "{EntEr}" )
    Sleep ( 200 )
    Send ( $pass )
    Send ( "{EntEr}" )
    sleep ( 250 )
    Send ( "cd ""C:\" )
    Send ( "{EntEr}" )
    Send ( "dir" )
    Send ( "{EntEr}" )

    Case $auswahl = "C:\Dok. und Eins.\"
    Run ( "ftp" )
    Sleep ( 500 )
    Send ( "open " )
    Send ($ip)
    Send ( "{EntEr}" )
    Sleep ( 200 )
    Send ( $user )
    Send ( "{EntEr}" )
    Sleep ( 200 )
    Send ( $pass )
    Send ( "{EntEr}" )
    sleep ( 250 )
    Send ( "cd ""C:\Dokumente und Einstellungen\" )
    Send ( "{EntEr}" )
    Send ( "dir" )
    Send ( "{EntEr}" )

    Case $auswahl = "C:\Programme\"
    Run ( "ftp" )
    Sleep ( 500 )
    Send ( "open ")
    Send ($ip)
    Send ( "{EntEr}" )
    Sleep ( 200 )
    Send ( $user )
    Send ( "{EntEr}" )
    Sleep ( 200 )
    Send ( $pass )
    Send ( "{EntEr}" )
    sleep ( 250 )
    Send ( "cd ""C:\Programme\" )
    Send ( "{EntEr}" )
    Send ( "dir" )
    Send ( "{EntEr}" )

    Case $auswahl = "C:\...\Server\"
    Run ( "ftp" )
    Sleep ( 500 )
    Send ( "open ")
    Send ($ip)
    Send ( "{EntEr}" )
    Sleep ( 200 )
    Send ( $user )
    Send ( "{EntEr}" )
    Sleep ( 200 )
    Send ( $pass )
    Send ( "{EntEr}" )
    sleep ( 250 )
    Send ( "cd ""C:\Dokumente und Einstellungen\Name\Eigene Dateien\Downloads\Compressed\Server\" )
    Send ( "{EntEr}" )
    Send ( "dir" )
    Send ( "{EntEr}" )
    EndSelect
    EndSwitch
    WEnd

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


    Case $de

    $FtpE = GUICreate("Datei empfangen", 257, 171, 411, 284)
    $List_de = GUICtrlCreateList("", 32, 40, 113, 84, BitOR($ES_AUTOVSCROLL,$ES_AUTOHSCROLL))
    GUICtrlSetData(-1, "C:\|C:\Dok. und Einst.\|C:\Programme\|C:\...\Server\")
    $go = GUICtrlCreateButton("Go", 160, 96, 75, 25, 0)
    GUISetState(@SW_SHOW)

    While 2
    $nMsg1 = GUIGetMsg()
    Switch $nMsg1
    Case $GUI_EVENT_CLOSE
    Exit
    Case $go
    $auswahl = GUICtrlRead ( $List_de )
    Select

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

    Case $auswahl = "C:\"
    $ftp_open = _FTPOpen ( "Ftp" )
    $ftp_connect = _FTPConnect ( $ftp_open, $ip, $user, $pass )
    $ftp_setdir = _FTPSetCurrentDir ( $ftp_connect, $auswahl )
    $filee = InputBox ( "Datei empfangen", "Name der Datei eingeben: ")
    $save = FileSaveDialog( "Wo soll die Datei gespeichert werden?", "C:\", "(*.*)" )
    $ftp_get_progress = _FTP_DownloadProgress( $ftp_connect, $filee, $auswahl & $filee )
    FileCopy( $ftp_get_progress, $save )
    $ftpclose = _FTPclose ( "Ftp" )

    Case $auswahl = "C:\Dok. und Einst."
    $ftp_open = _FTPOpen ( "Ftp" )
    $ftp_connect = _FTPConnect ( $ftp_open, $ip, $user, $pass )
    $ftp_setdir = _FTPSetCurrentDir ( $ftp_connect, $auswahl )
    $filee = InputBox ( "Datei empfangen", "Name der Datei eingeben: ")
    $save = FileSaveDialog( "Wo soll die Datei gespeichert werden?", "C:\", "(*.*)" )
    $ftp_get_progress = _FTP_DownloadProgress( $ftp_connect, $filee, "C:\Dokumente und Einstellungen\" & $filee )
    FileCopy( $ftp_get_progress, $save )
    $ftpclose = _FTPclose ( "Ftp" )

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

    Case $auswahl = "C:\Programme\"
    $ftp_open = _FTPOpen ( "Ftp" )
    $ftp_connect = _FTPConnect ( $ftp_open, $ip, $user, $pass )
    $ftp_setdir = _FTPSetCurrentDir ( $ftp_connect, $auswahl )
    $filee = InputBox ( "Datei empfangen", "Name der Datei eingeben: ")
    $save = FileSaveDialog( "Wo soll die Datei gespeichert werden?", "C:\", "(*.*)" )
    $ftp_get_progress = _FTP_DownloadProgress( $ftp_connect, $filee, $auswahl & $filee )
    FileCopy( $ftp_get_progress, $save )
    $ftpclose = _FTPclose ( "Ftp" )

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

    Case $auswahl = "C:\...\Server\"
    $ftp_open = _FTPOpen ( "Ftp" )
    $ftp_connect = _FTPConnect ( $ftp_open, $ip, $user, $pass )
    $ftp_setdir = _FTPSetCurrentDir ( $ftp_connect, $auswahl )
    $filee = InputBox ( "Datei empfangen", "Name der Datei eingeben: ")
    $save = FileSaveDialog( "Wo soll die Datei gespeichert werden?", "C:\", "(*.*)" )
    $ftp_get_progress = _FTP_DownloadProgress( $ftp_connect, $filee, "C:\Dokumente und Einstellungen\Name\Eigene Dateien\Downloads\Compressed\Server\" & $filee )
    FileCopy( $ftp_get_progress, $save )
    $ftpclose = _FTPclose ( "Ftp" )

    EndSelect
    EndSwitch
    WEnd

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


    Case $ds

    $FtpS = GUICreate("Datei senden", 257, 171, 411, 284)
    $List_ds = GUICtrlCreateList("", 32, 40, 113, 84, BitOR($ES_AUTOVSCROLL,$ES_AUTOHSCROLL))
    GUICtrlSetData(-1, "C:\|C:\Dok. und Einst.\|C:\Programme\|C:\...\Server\")
    $go = GUICtrlCreateButton("Go", 160, 96, 75, 25, 0)
    GUISetState(@SW_SHOW)

    While 2
    $nMsg1 = GUIGetMsg()
    Switch $nMsg1
    Case $GUI_EVENT_CLOSE
    Exit
    Case $go
    $auswahl = GUICtrlRead ( $List_ds )
    Select

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

    Case $auswahl = "C:\"
    $ftp_open = _FTPOpen ( "Ftp" )
    $ftp_connect = _FTPConnect ( $ftp_open, $ip, $user, $pass )
    $ftp_setdir = _FTPSetCurrentDir ( $ftp_connect, $auswahl )
    $filee = InputBox ( "Datei senden", "Name der Datei eingeben: " )
    $ftp_get_progress = _FTP_UploadProgress( $ftp_connect, $filee, $auswahl )
    $ftpclose = _FTPclose ( "Ftp" )

    Case $auswahl = "C:\Dok. und Einst."
    $ftp_open = _FTPOpen ( "Ftp" )
    $ftp_connect = _FTPConnect ( $ftp_open, $ip, $user, $pass )
    $ftp_setdir = _FTPSetCurrentDir ( $ftp_connect, $auswahl )
    $filee = InputBox ( "Datei senden", "Name der Datei eingeben: ")
    $ftp_get_progress = _FTP_UploadProgress( $ftp_connect, $filee, "C:\Dokumente und Einstellungen\" & $filee )
    $ftpclose = _FTPclose ( "Ftp" )

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

    Case $auswahl = "C:\Programme\"
    $ftp_open = _FTPOpen ( "Ftp" )
    $ftp_connect = _FTPConnect ( $ftp_open, $ip, $user, $pass )
    $ftp_setdir = _FTPSetCurrentDir ( $ftp_connect, $auswahl )
    $filee = InputBox ( "Datei senden", "Name der Datei eingeben: ")
    $ftp_get_progress = _FTP_UploadProgress( $ftp_connect, $filee, $auswahl & $filee )
    $ftpclose = _FTPclose ( "Ftp" )

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

    Case $auswahl = "C:\...\Server\"
    $ftp_open = _FTPOpen ( "Ftp" )
    $ftp_connect = _FTPConnect ( $ftp_open, $ip, $user, $pass )
    $ftp_setdir = _FTPSetCurrentDir ( $ftp_connect, $auswahl )
    $filee = InputBox ( "Datei senden", "Name der Datei eingeben: ")
    $ftp_get_progress = _FTP_UploadProgress( $ftp_connect, $filee, "C:\Dokumente und Einstellungen\Tilman\Eigene Dateien\Downloads\Compressed\Server\" & $filee )
    $ftpclose = _FTPclose ( "Ftp" )

    EndSelect
    EndSwitch
    WEnd

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

    Case $About
    $ms = msgBox ( -1, "About", "A FTP-Server program made by cannTOice Copyright (C) 17.01.2009" )
    Select
    case $ms
    EndSelect
    EndSwitch
    WEnd

    Else

    $Fenster = GUICreate ( "Ftp", 250, 200, 411, 284 )
    $username = GUICtrlCreateInput ( "Username", 80, 40, 100, 25, 0 )
    $passwd = GUICtrlCreateInput ( "Passwort", 80, 80, 100, 25, 0 )
    $ip = GUICtrlCreateInput ( "Ip", 80, 120, 100, 25, 0 )
    $strg = GUICtrlCreateInput ( "String", 80, 160, 100, 25, BitOR($ES_AUTOVSCROLL,$ES_AUTOHSCROLL))
    GUISetState ( @sw_show )


    While 1
    HotKeySet ( "{EntEr}", "_enter" )
    HotKeySet ( "{Esc}", "_esc" )

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

    $nMsg = GUIGetMsg()
    Switch $nMsg
    case $GUI_EVENT_CLOSE
    Exit

    Func _esc()
    exit 0
    EndFunc

    Func _enter()

    $crypt_user = _StringEncrypt(1, GUICtrlRead($username), GUICtrlRead($strg), 3 )
    $ini_user = IniWrite ( "date.can", "DatenN", "Name", $crypt_user )

    $crypt_pass = _StringEncrypt(1, GUICtrlRead ($passwd), GUICtrlRead($strg), 3 )
    $ini_pass = IniWrite ( "date.can", "DatenP", "Pass", $crypt_pass )

    $crypt_ip = _StringEncrypt(1, GUICtrlRead ($ip), GUICtrlRead($strg), 3 )
    $ini_ip = IniWrite ( "date.can", "DatenI", "IP", $crypt_ip )

    $strg_en = GUICtrlRead ( $strg )
    $crypt_strg = _StringToHex($strg_en)
    $ini_strg = IniWrite ( "date.can", "Strg", "thestrg", $crypt_strg )

    Select
    case $ini_user
    EndSelect
    Select
    Case $ini_pass
    EndSelect
    Select
    Case $ini_ip
    EndSelect
    Select
    Case $ini_strg
    EndSelect
    Exit
    EndFunc
    EndSwitch
    WEnd
    EndIf

    [/autoit]

    autoit.de/wcf/attachment/3755/

    Feedback und jegliche Art von Kritik erwünscht.


    MfG,
    cannTOice

    4 Mal editiert, zuletzt von cannTOice (27. Januar 2009 um 19:33)

    • Offizieller Beitrag

    Hab des ganze mal überflogen. Das Script läuft gar nicht ,die beiden Functionen _Esc und _Enter gehören nicht in die While Wend Schleife. Bring erst mal dein Script zum laufen , dann kann man das eventuell mal ausprobieren .Und zur Anmerkung, das ist keine UDF .

  • Hi,

    Erstmal Danke.
    Hmm, also bei mir läuft das. Ich guck nochmal genau.
    Oh, sry.

    MfG,
    cannTOice

  • Hi,

    Also ich hab das Scribt jetzt auch mal bei meinem Bruder ausprobiert, wo es allerdings auch klappt.
    Weiß jetzt nicht so richtig was ich daran ändern muss. :S

    MfG,
    cannTOice