Name der unterbrochenen Funktion irgendwie ermittelbar?

  • Hallo Zusammen,

    erst einmal ein gutes neues Jahr 2008!

    Ist habe mit Hotkey("^d", "_Hotkey_CTRL_D) das CTRL-D belegt, was auch soweit funktioniert. Habe ich irgendwie die Möglichkeit herauszubekommen, in welcher Funktion mein Script unterbrochen wurde. Damit meine ich noch nicht mal den Namen der AutoIt-Funktion die gerade läuft, sondern vielmehr den Namen meiner Funktion wo das Script unterbrochen wurde. Ist sowas möglich oder muß ich das selber implementieren?

    Besten Dank schon mal!
    R@iner

  • hi

    denke nicht, das dass möglich ist... was du aber machen köntest, ist in jeder Funktion in eine globale variable zu schreiben... also z.B. so:

    [autoit]

    global $func="main"
    ;mainzeug

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

    func func1()
    $func = "func1 gerade aktiv: )"
    ;eigendliche funktion
    endfunc

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

    func unterbrechendefunktion()
    msgbox(0,"",$func)
    endfunc

    [/autoit]

    grez

    • Offizieller Beitrag

    Kann dir grad nicht folgen.
    Deine per HotKey aufgerufene Funktion kann doch erst dann greifen, wenn momentan dein Programm 'idlet' - also z.B. auf GUI-Msg oder ein Event wartet.
    Willst du wissen, welche Msg/Event davor aktiviert war? - Dann schreib doch für jedes Ereignis einen LOG-Eintrag in ein Logfile, das du, um es nicht überlaufen zu lassen, bei jedem Programmstart löschst.

  • Wo wir grad beim Thema sind: Wie kann man ein Script eigentlich pausieren lassen? Weil bei Downloadprogrammen oder manchen Setups findet man ja öfter die Funktion es zu pausieren.

    Projekte: Keine größeren (und fertigen)
    Gegen Internetzensur:
    https://epetitionen.bundestag.de/index.php?acti…s;petition=3860
    (Zeichnungsfrist abgelaufen)
    __________________________________________________________________________________________________________________________________
    Dieser Beitrag wurde bereits 264 mal editiert, zuletzt von »Fast2« (30. Februar 2009, 12:99)

  • Hallo Zusammen,

    @maycontainnut: danke, genau so werd ich es machen.

    BugFix : Nein, es ist kein GUI. Ich hab da ein Script geschrieben, das komplexe Dinge tut mit Funktionen die wiederum Funktionen aufrufen. Und wenn ich eben einen gewisse Tastenkombination drücke, dann will ich wissen, in welcher Funktion ich bin und muß ne Berechnung in Abhängigkeit der unterbrochenen Funktion machen. Aber ich habe es so gelöst, wie es auch maycontainnut empfohlen hat.

    Fast2: Schau Dir mal das Beispiel in der Hilfe zu HotKeySet an. Das könnte Dein Frage beantworten

    Eine Frage habe ich noch. Wenn ich meine eigenen Funktionen in ein eigenes mein_udf.au3 auslagere, was muß ich machen, damit ich im SciTE auch die Syntax meiner Funktionen beim eintippen sehen würde?

    Also wenn ich z.B. "RegRead(" tippe, dann geht ja ein kleines Fenster auf, wo RegRead ( "keyname", "valuename" ) und noch eine weitere Hinweis-Zeile ausgegeben wird. Was muß ich machen, damit das bei meinen selbst geschriebenen Funktionen, die in mein_udf.au3 liegen, auch passiert? Es ist schon klar, daß die in dem aktuellen au3-File mittels Include eingebunden wird. Damit kann ich sie aufrufen, aber ich bekomme noch nicht die Syntax/Paramater angezeigt :)

    Gibt es da irgendwo ne "How to"?

    Besten Dank!
    R@iner

    • Offizieller Beitrag

    Eigene Calltipps hinterlegst du in der Datei: ..\SciTE\api\au3.user.calltips.api.
    Existiert diese Datei nicht, kannst du sie erstellen.
    Du schreibst dann einfach in jede Zeile einen Tipp in der Form:

    Code
    _Array2DSplit(Quell-Array, Ziel-Array, SplitIndex [, Anzahl Elemente]); #include ArrayMore.au3
  • Hallo BugFIx,

    Eigene Calltipps hinterlegst du in der Datei: ..\SciTE\api\au3.user.calltips.api.


    super, vielen Dank!

    Zitat

    _Array2DSplit(Quell-Array, Ziel-Array, SplitIndex [, Anzahl Elemente]); #include ArrayMore.au3


    Allerdings braucht es nach der Abschlußklammer der Funktionsparameter kein ";", es reicht ein Leerzeichen

    Eine Frage habe ich jetzt noch, wo wir schon dabei sind. ;) Nicht daß ich es jetzt gleich machen will, aber wie erstelle ich dann eine Help-Datei und wie binde ich die dann ein? Gibt es da Tools um Compiled HTML Files zu erstellen?

    Besten Dank und happy computing!
    R@iner

  • Verwende HTML Workshop, ist Free: HTML Download


    Danke, damit komme ich gewiß zurecht. Ich werd das morgen doch gleich mal ausprobieren.

    Zitat

    Falls Du eine Hilfe zur Anwendung brauchst, melde dich nochmal.


    Danke für Dein Angebot. Gibt es AutoIt-Templates? Wenn ich jetzt die chm fertig habe, was muß ich dann noch in AutoIt machen, damit die beim Drücken von F1 auch geöffnet wird und vor allem die richtige Hilfe zur gewünschten Funktion?

    Happy computing!
    R@iner

    • Offizieller Beitrag
    Zitat

    was muß ich dann noch in AutoIt machen, damit die beim Drücken von F1 auch geöffnet wird und vor allem die richtige Hilfe zur gewünschten Funktion?


    Wenn es über die AutoIt-Hilfe laufen soll, mußt du diese vorher mit dem HTML Workshop decompilen, deine eigenen Dateien einfügen, entsprechend indexieren (Aufpassen, dass du nichts zerschießt :P) und dann die Hilfe neu kompilieren.

  • Hello again,

    Wenn es über die AutoIt-Hilfe laufen soll, mußt du diese vorher mit dem HTML Workshop decompilen, deine eigenen Dateien einfügen, entsprechend indexieren (Aufpassen, dass du nichts zerschießt :P) und dann die Hilfe neu kompilieren.


    hm, da muß es noch ne andere Möglichkeit geben, denn paulA hat bei seinem Auto3Lib zum einen ne eigene au3.auto3lib.calltips.api mitgebracht und die irgendwie eingebunden, ebenso ein eigenes Helpfile. Ich bin mir jetzt nicht mehr ganz sicher, ob das HelpFile durch drücken auf F1 im SciTE automatisch auf ging oder ob ich das separat starten mußte. Ist schon so lange her ;)

    Happy computing!
    R@iner