IniRead Problem

  • Hallo, ich möchte gerne mit einem Programm eine Datei zu einem bestimmten Pfad herunterladen.
    Ich möchte, dass der Pfad nur einmal ausgewählt werden muss und danach in einer .ini Datei gespeichert wird.
    Das klappt auch alles soweit, nur wenn ich auf meinen Update Button drücke (um die Datei erneut herunter zu laden) muss ich den Pfad wieder neu auswählen, weil die IniRead funktion einen Fehler ausgibt (mit MsgBox am Ende der funktion bei der Fehlerausgabe getestet).

    [autoit]

    Global Const $Folder = IniRead("settings.ini","Pfad","Standart","Error") Global Const $sDownloadLink = "beispiel.de" Local $DownloadFile = InetGet($sDownloadLink,$Folder,1,1)

    [/autoit]


    Es soll also der Pfad zum Speichern der Datei aus der settings.ini ausgelesen werden.
    So wird die .ini beschrieben

    [autoit]

    If IniRead("settings.ini","Pfad","Standart","Error") = "Error" Then Global Const $Selection = FileSelectFolder("Wähle deinen Ordner","C:")&"\test.exe" IniWrite("settings.ini","Pfad","Standart",$Selection) EndIf

    [/autoit]


    Ich weiß mein Code ist grausam, da ich noch totaler Anfänger bin...
    Ich hoffe ihr könnt mir trotzdem irgendwie helfen, Danke  :D

    5 Mal editiert, zuletzt von Pumba1709 (11. Oktober 2013 um 14:30)

  • So wie ich das sehe, schreibst du mit dem Code aus dem zweiten Beispiel "Error" in den Parameter der INI-Datei.
    Hier solltest du meiner Meinung nach besser die Variable $selection einsetzen.

  • Ups, den Fehler habe ich wohl eingebaut als ich rumprobiert habe warum es nicht funktioniert, naja jedenfalls habe ich das jetzt abgeändert (Beitrag editiert), aber es funktioniert irgendwie trotzdem nicht.

  • jedenfalls habe ich das jetzt abgeändert (Beitrag editiert), aber es funktioniert irgendwie trotzdem nicht.


    Scheinbar hakt es jetzt an einer anderen Stelle, deshalb würden mehr Informationen bei der Problembehebung helfen.
    Ich hab deinen Code umgeschrieben um beispielsweise das Forum Logo herunterzuladen, evtl. hilft es dir. :)

    [autoit]

    $Folder = IniRead(@ScriptDir & "\settings.ini", "Pfad", "Standart", "Error") ;INI Datei auslesen

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

    If $Folder = "Error" Then ;Wenn der Pfad noch nicht in der INI steht
    $Folder = FileSelectFolder("Wähle deinen Ordner","C:") & "\autoit_logo_gtaspider.png" ;$Folder nicht $Selection
    IniWrite(@ScriptDir & "\settings.ini","Pfad","Standart", $Folder) ;Pfad in INI Datei schreiben
    EndIf

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

    $sDownloadLink = "http://www.autoit.de/wcf/images/futurex/autoit_logo_gtaspider.png" ;BTW schönes Foren Logo :)
    $DownloadFile = InetGet($sDownloadLink, $Folder, 1) ;Datei herunterladen und bis zur Fertigstellung das Skript anhalten

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

    Außerdem hab ich $Selection gleich in $Folder umbenannt, um nicht später noch $Folder = $Selection schreiben zu müssen :)