Aufrufen separater Routinen

Stelle Fragen zur Programmierung mit Autohotkey

Moderator: jNizM

User avatar
Meister Lampe
Posts: 231
Joined: 06 Apr 2014, 13:28

Aufrufen separater Routinen

13 Jan 2024, 17:18

Hallo Zusammen!

Ich trage schon länger eine Frage zum Aufrufen eigenständiger Routinen mit mir rum:

Ich habe mehrere kleinere Anwendungen, die für sich mit Hotstrings aufgerufen werden können. Einige davon werden auch innerhalb eines anderen Scripts eingebunden bzw. von dort aus als Subroutine mit gosub aufgerufen und haben deshalb auch ein Label mit aussagekräftigem Namen davor. Wie bekomme ich es hin, daß das Hauptprogramm gleich weiterläuft, wenn das Unterprogramm abgearbeitet ist? Durch das return am Ende, das ja notwendig ist, wenn es separat laufen soll, wird der Zeiger wieder auf Anfang gesetzt und ich muß das Hauptprogramm wieder von vorne starten.

Bis jetzt konnte ich immer irgendwelche Abfragen einbauen, die prüfen, ob die Subroutine bereits aufgerufen wurde und damit Teile des Scripts überspringen, damit diese nicht ein zweites Mal durchgeführt werden. Aber starten muß ich es trotzdem neu.
Das Ganze ist also kein Programmfehler, weshalb ich mich damit zeitweilig abgefunden habe und andere Änderungen am Script priorisiert habe. Aber es nervt und ist eben nicht sehr komfortabel.

Hättet Ihr einen Tipp?

Viele Grüße von Meister Lampe
just me
Posts: 9542
Joined: 02 Oct 2013, 08:51
Location: Germany

Re: Aufrufen separater Routinen

14 Jan 2024, 04:59

Moin Meister,

ich kann Deine Problembeschreibung nicht verstehen. Es wäre wohl besser, ein praktisches Beispiel als Skript einzustellen.

Schon mal vorab: Ein Return am Ende einer per Gosub aufgerufenen Subroutine "setzt keinen Zeiger auf Anfang". Das Skript wird mit der Zeile fortgesetzt, die auf das Gosub folgt. Und genau das sind Sinn und Zweck von Subroutinen. Der Ablauf ist so, als würde der Inhalt der Subroutine direkt zwischen dem Gosub und der folgenden Anweisung eingefügt.

Return to “Ich brauche Hilfe”

Who is online

Users browsing this forum: No registered users and 5 guests