Beenden, wenn für X-Zeit inaktiv, Problem beim Speichern des Skripts als App


0

Ich habe ein kleines Skript erhalten, mit dem die App beendet wird, wenn der Computer X-mal inaktiv ist. Es funktioniert einwandfrei, aber wenn ich es als App speichere und starte, kann ich es nicht beenden. Das Ergebnis ist, dass ich das Beenden meiner Skript-App erzwingen muss, um meinen Computer neu zu starten. Kann ich das beheben? Ist es die Wiederholungsschleife, die es nicht schafft?

Vielen Dank

    # Action lorsque que l'ordinateur est sans activité pendant un certain temps
#
set cmd to "echo $((`ioreg -w 0 -c IOHIDSystem | sed -e '/HIDIdleTime/ !{ d' -e 't' -e '}' -e 's/.* = //g' -e 'q'` / 1000000000))"

#
# Définir ici le nombre de seconde en idle avant d'exécuter l'action 
#
set maxIdleAllowed to 90

#
# Conbien de fois vérifier le idle en seconde
#
set checkInterval to 5

#
# On loop indéfiniment
#
repeat
    set secsIdle to 0

    try
        set answer to (do shell script cmd)
        set secsIdle to (answer as number)
    on error
        # May want to do something fancy here...
        exit repeat
    end try

    log secsIdle

    if secsIdle > maxIdleAllowed then
        # Changer le nom de l'application TextEdit pour votre application
        tell application "FileMaker Pro" to quit
    end if

    delay checkInterval
end repeat

Antworten:


0

Nur-Link-Antworten werden verpönt und entmutigt, da Verbindungen möglicherweise unterbrochen werden und dies dazu führen kann, dass eine Nur-Link-Antwort wertlos wird. Nur-Link-Antworten können auch gelöscht werden, nur weil sie Nur-Link-Antworten sind! Bitte fügen Sie die relevanten Informationen hinzu, damit die Antwort für sich allein steht, ohne dass die derzeit verfassten Links unbedingt erforderlich sind.
— user3439894
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.