zwei kleine Fragen

  • Hi,

    ich stehe gerade kräftig auf dem Schlauch. Ich möchte aus eine InI mittels IniRead die variable @year ect. auslesen

    Spoiler anzeigen
    [autoit]

    InI 001=C:\Testordner\" & @year & "\test.txt"

    [/autoit]

    , damit der gesamte Dateiname im Script nicht zulang wird.(wird aus mehreren Teilen der InI zusammengesetzt). Die zweite Frage ist kann man im ToolTip den Functionnamen mit ausgeben, worin sich der ToolTip befindet?

    Danke schon mal.

    ThomasB

    MFG ThomasB

    *
    Ich lese viel und gerne (und wenn ich alle Mahnungen durch habe, schmeiße ich sie weg)
    *

    Einmal editiert, zuletzt von Thomasb (12. Januar 2009 um 07:00)

  • Hi,

    leider will das nicht so recht.

    Spoiler anzeigen
    [autoit]

    Opt("ExpandEnvStrings", 1) ;0=nicht auswerten, 1=auswerten
    Opt("ExpandVarStrings", 1)

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

    ConsoleWrite(IniRead(@ScriptDir & "\Time.txt", "Time", "002",""))

    [/autoit]
    Spoiler anzeigen

    >Running:(3.3.0.0):C:\Programme\AutoIt3\autoit3.exe "C:\Programme\AutoIt3\Include\Testdatei_2_nicht löschen.au3"
    c:\Thomas\ & @year@ & \test.txt+>18:30:54 AutoIT3.exe ended.rc:0
    +>18:30:55 AutoIt3Wrapper Finished


    Woran kann es liegen?
    Zu 2 habe ich mich unglücklich ausgedrückt. Was ich wollte ist das der ToolTip evtl. den _Func() -Namen wiedergibt als variable. Sicher kann der Name auch von Hand eingetragen werden.

    ThomasB

    MFG ThomasB

    *
    Ich lese viel und gerne (und wenn ich alle Mahnungen durch habe, schmeiße ich sie weg)
    *

  • ... ich kapier dein(e) problem(e) überhaupt nicht erstens ist @year keine variable sondern ein makro das das aktuelle jahr (systemzeit) ausgibt... dazu brauchst du keine ini ;)

    zu 2.
    Dazu fällt mir nichts ein wie man den aktuellen funktionsnamen auslesen könnte, den musst du halt so reinschreiben... sollte ja nicht das problem sein da funktionsnamen nicht dynamisch sein können

    MFG FireFlyer

    *Paradox ist, wenn man sich im Handumdrehen den Fuss bricht* :D

  • es geht hierbei um die Länge und die Übersichtlichkeit im Script. z.B. wenn der Dateiname eine InI sich aus mehreren Teilen mir mehreren @year @mon etc. zusammensetzen. Somit gebe ich das in der Ini vor.
    Die andere Sache hatte ich mir schon gedacht. Das kann getrost zu den Akten gelegt werden.
    Thomas

    MFG ThomasB

    *
    Ich lese viel und gerne (und wenn ich alle Mahnungen durch habe, schmeiße ich sie weg)
    *

  • Hilft dir das Beispiel?

    Spoiler anzeigen
    [autoit]


    IniWrite("bsp.ini", "time", "003", "Das ist das Jahr --> " & @year)
    $var = IniRead("bsp.ini", "time", "003", "Eintrag nicht gefunden")
    MsgBox(4096, "Ergebnis: ", $var)

    [/autoit]

    Und BITTE nächstes mal eine eindeutige Überschrift! Vielen Dank!
    Gruss,
    Lina.

    Lieben Gruß,
    Alina

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Geheime Information: ;)
    OuBVU5ebLhHu5QvlnAyQB4A7SzBrvWulwL7RLl2BdH5tI6sIYspeMKeXMSXl

    • Offizieller Beitrag

    Alina, ich glaube er meint das anders.

    Meine Kristallkugel ;) sagt dazu jedenfalls, dass Du (Thomasb) den Befehl Execute suchst und dass Du den String in zusätzliche Anführungszeichen speichern musst:

    [autoit]


    IniWrite('Time.ini', 'Time', '001', Chr(34) & "'C:\Testordner\' & @year & '\test.txt'" & Chr(34))
    $sFilename = IniRead('Time.ini', 'Time', '001', '')
    MsgBox(0, 0, Execute($sFilename))

    [/autoit]

    Die erste Zeile soll nur zum erstellen der Inidatei dienen. Mit Execute wird dann das Makro auch ausgewertet.

  • Moin moin,

    danke Oskar das hat geholfen. Ich hatte auch schon alles in zusätzliche " " gesetzt. Leider hatte ich aber Execute nicht benutzt.

    ThomasB

    MFG ThomasB

    *
    Ich lese viel und gerne (und wenn ich alle Mahnungen durch habe, schmeiße ich sie weg)
    *