datei downloaden und speichern

  • Hey,
    hab da nen kleines Problem,wie kann ich die datei Downloaden und in einem bestimmten Ordner Speichern?



    Func OnNo()
    $server = '*************'
    $username = '*************'
    $pass = '*************'

    $Open = _FTPOpen('MyFTP Control')
    $Conn = _FTP_Connect($Open, $server, $username, $pass)
    $erconn = @error
    MsgBox (0, "Test", $erconn)
    _FTP_FileGet ($Conn, "http://blahblah.de/datei/www.exe","C:/" )
    $Ftpc = _FTP_Close($Open)

    MsgBox($MB_SYSTEMMODAL, "DOWNLOAD FERTIG", "!!!")
    EndFunc ;==>OnNo

    Func OnExit()
    If @GUI_CtrlId = $g_idExit Then
    Else
    EndIf

    Exit
    EndFunc ;==>OnExit


    ich hoffe mir kann da einer Helfen Danke!

  • ... wie kann ich die Datei downloaden und in einem bestimmten Ordner speichern ?

    Schaue Dir mal die akt. deutsche Hilfe zu _FTP_FileGet und den anderen Funktionen der FTPEx.au3 an, dort findest Du umfangreiche Beispiele wie :

    Das Downloadziel legst Du im 3. Parameter von _FTP_FileGet fest, bei Dir z.Zt. "C:/" .

    Setze dort beispielsweise @ScriptDir & "\www.exe" ein.


    EDIT :

    Auf das ShellExecute($s_LocalFile) solltest Du aber verzichten, da es sich um eine .exe handelt.


    Gruß Musashi

    86598-musashi-c64-png

    "Am Anfang wurde das Universum erschaffen. Das machte viele Leute sehr wütend und wurde allenthalben als Schritt in die falsche Richtung angesehen."

    2 Mal editiert, zuletzt von Musashi () aus folgendem Grund: Anwort erweitert

  • Wenn Du nur eine Datei benötigst (siehe Dein Beispiel), kannst du auch das sehr schön gestaltete Downloadtool von Oscar nutzen.

    Ja, das wäre auch eine Möglichkeit, und wie Du sagst, eine Schöne noch dazu :).


    m3po : Zusatzinfo

    Im Beispiel von Oscar zur _DownloadWithProgress.au3 wird keine 'FTP-URL' genannt.

    Nimmt man den Server aus dem Beispiel zu _FTP_FileGet , also ServerName = 'ftp.csx.cam.ac.uk' , dann würde das wie folgt aussehen : Global $sURL = 'ftp://ftp.csx.cam.ac.uk/README'

    C
    #include '_DownloadWithProgress.au3'
    Global $sDownloadDir = @ScriptDir
    Global $sURL = 'ftp://ftp.csx.cam.ac.uk/README'
    Global $hGui = GUICreate('Parent-Gui (Test)', 640, 480)
    GUISetState()
    _DownloadWithProgress($sURL, $sDownloadDir, 1031, 'AutoIt-Download-Tool', -1, -1, $hGui)
    ConsoleWrite('ERROR = ' & @error & @CR)
    Do
    Until GUIGetMsg() = -3

    Das funktioniert problemlos ! Dieser Server verlangt aber auch keine Angabe von Username und Passwort, das ist bei Dir offenbar erforderlich.


    Lt. Hilfe zu InetGet (wird in Oscar's Tool verwendet) :

    (EDIT : Text als Inline-Code, sonst fügt der Editor ein zusätzliches http:// ein - Danke Bitnugger) :

    Um einen Benutzernamen und Passwort zum Verbinden zu benutzen, schreibt man einfach "Username:Passwort@" vor den Servernamen, z.B. "http://myuser:mypassword@www.somesite.com"



    Das müsste dann bei Dir in etwa wie folgt aussehen (ungetestet) :

    Global $sURL = 'ftp://DeinUsername:DeinPasswort@DeinServerName/DeineDatei'


    Gruß Musashi

    86598-musashi-c64-png

    "Am Anfang wurde das Universum erschaffen. Das machte viele Leute sehr wütend und wurde allenthalben als Schritt in die falsche Richtung angesehen."

    5 Mal editiert, zuletzt von Musashi ()

  • 2x http:// ... hinter dem @ muss es weg...

    Stimmt, aber das habe ich direkt aus der Hilfe hier 'reinkopiert !

    Kann es sein, dass der Forumseditor das von sich aus hinzugefügt hat ?


    Test (erneutes Kopieren aus der Hilfe) :

    Um einen Benutzernamen und Passwort zum Verbinden zu benutzen, schreibt man einfach "Username:Passwort@" vor den Servernamen, z.B. "http://myuser:mypassword@http://www.somesite.com"

    -> Vor dem Absenden ist es OK !


    EDIT : Bei normalem Text setzt der Editor automatisch ein http:// zwischen @ und www.

    Grundsätzlich kein Problem - in diesem speziellen Fall schon, daher Inline-Code verwenden !

    Bitnugger : Nebenbei - gutes Auge für unser Alter, ist mir gar nicht aufgefallen ;)


    Gruß Musashi

    86598-musashi-c64-png

    "Am Anfang wurde das Universum erschaffen. Das machte viele Leute sehr wütend und wurde allenthalben als Schritt in die falsche Richtung angesehen."

    4 Mal editiert, zuletzt von Musashi ()

  • Es funktioniert! :) Danke an alle die mir geholfen haben hier die Lösung!


  • m3po

    Hat das Label [ gelöst ] hinzugefügt
  • Wenn der Teil ab www als Inline-Code eingefügt wird, fügt der Foreneditor kein http:// hinzu... etwa so:

    Um einen Benutzernamen und Passwort zum Verbinden zu benutzen, schreibt man einfach "Username:Passwort@" vor den Servernamen, z.B. [tt]http://myuser:mypassword@www.somesite.com[/tt]


    Das sieht dann so aus:

    Um einen Benutzernamen und Passwort zum Verbinden zu benutzen, schreibt man einfach "Username:Passwort@" vor den Servernamen, z.B. http://myuser:mypassword@www.somesite.com