Schleife bis Rückgabewert passt

  • Hi @ all


    Möchte einen Fenstertitel per Process abfragen. Nutze dazu den u.g. Code, der liefert auch meist das gewünschte Ergebnis. Manchmal kommts aber dazu, dass er -1 zurück gibt, weil das System zu langsam ist. Überlegung war jetzt, den Befehl in eine Schleife zu setzen die beendet wird solbald nicht mehr -1 zurückgegeben wird. Habe verschiedene Bsp. probiert, aber nicht das gewünschte Ergenis erzielt :( Denke mal für einen Profi eine Kleinigkeit - wer kann mir da weiterhelfen?

  • Hallo @dieselwiesel,
    eigentlich sieht das für mich gut aus. Ich stolpere über folgende Aussage:

    Manchmal kommts aber dazu, dass er -1 zurück gibt, weil das System zu langsam ist.

    Was heißt das? Willst du mit dieser Funktion testen, ob deine eigenes Skript schon einmal gestartet wurde?
    Ich konnte jetzt bei kurzen Tests jedenfalls lein Problem feststellen mit Fenstern von anderen Anwendungen.
    Wie sah denn dein Schleifentest aus?

    Grüße autoiter

  • Mit meinem Script möchte ich ein Programm starten & steuern von dem ich z.b. den Fenstertitel brauche um ControlClick zu senden. Das zu steuernde Programm braucht nen moment bis es vollständig geladen ist - manchmal zu lange bis der Fenstertitel verfügbar ist. Daher dachte ich an eine Schleife bis ein Fenstertitel von der Funktion zurück kommt.

    • Offizieller Beitrag

    Ich würde zusätzlich einen Timeout einbauen, für den Fall, dass das Fenster nicht aufgeht:

  • @autoiter
    Irgendwas zur Fensteridentifikation brauch man auch bei WinWaitActive.

    @Oscar
    Sehr geil - auch das mit dem Timer, danke!!! Hatte mit While Schleifen experimentiert und nicht hinbekommen, obwohl es damit sicherlich auch funktioniert hätte.

    Edit: ein Sleep() ist nicht notwendig in der Schleife?

    Einmal editiert, zuletzt von dieselwiesel (17. Juli 2017 um 12:54)