Apple Script : Fermeture auto. à heure fixe

Résolu
Bonjour,

J'aimerais programmer la fermeture automatiqued'une application à tous les jours à 23h.
J'ai bien trouvé qq bouts de AppleScript mais je n'arrive pas à assembler les pièces pour que ça fonctionne.

merci à l'avance pour votre aide
Configuration: Mac OS X
Firefox 2.0.0.6

5 réponses

  1. Contributeur
    Bonjour,

    Montre-les.
    Quelqu'un pourra peut-être t'aider à les assembler.

    --
    1. Bonjour,

      J'avais trouvé cette formule qui permet d'obtenir l'heure en format hh:mm:ss

      set timeStr to time string of (current date)
      set Pos to offset of ":" in timeStr
      set theHour to characters 1 thru (Pos - 1) of timeStr as string
      set timeStr to characters (Pos + 1) through end of timeStr as string
      set Pos to offset of ":" in timeStr
      set theMin to characters 1 thru (Pos - 1) of timeStr as string
      set timeStr to characters (Pos + 1) through end of timeStr as string
      set Pos to offset of " " in timeStr
      set theSfx to characters (Pos + 1) through end of timeStr as string
      return (theHour & ":" & theMin & " " & theSfx) as string

      Ensuite cette formule qui permet de fermer l'application :
      if time of (current date) is "" then
      tell application "File Maker"
      quit
      end tell
      end if

      Mais je n'arrive pas à intégrer la formule de l'heure dans celle pour fermer l'application.

      voilà où j'en suis :-(
      1. Contributeur
        Je ne connais pas trop AppleScript, mais, avec quelques tests, j'ai fait ça
        set timeStr to time string of (current date)
        set Pos to offset of ":" in timeStr
        set theHour to characters 1 thru (Pos - 1) of timeStr as string
        set timeStr to characters (Pos + 1) through end of timeStr as string
        set Pos to offset of ":" in timeStr
        set theMin to characters 1 thru (Pos - 1) of timeStr as string
        set timeStr to characters (Pos + 1) through end of timeStr as string
        set Pos to offset of " " in timeStr
        set theSfx to characters (Pos + 1) through end of timeStr as string
        
        set theHourenChn to theHour as string
        
        display dialog "timeStr = " & timeStr & " • Longueur de theHour = " & (length of theHour) & " • theHour = " & theHour as string
        display dialog "time of (current date) = " & (time of (current date)) as string
        
        if theHourenChn is "16" then
        	display dialog "C'est l'heure. Au revoir."
        	tell application "TextEdit" to quit
        end if
        
        qui semble fonctionner, qui quitte le programme cité si une certaine heure est en cours.

        Ça demande confirmation si des modifications n'ont pas été enregistrées.

        --
        1. Super! Merci beaucoup.

          Maintenant comment fait-on pour activer le script. Où dois-je le sauvegarder?
          Peut-on faire une boite de dialogue qui ne requiert pas de réponse? ex. Fermeture automatique prévu dans 1 min... et la boîte disparaît toute de seule?
          1. Avis aux intéressé(e)s

            J'ai enfin trouvé une solution à mon problème
            C'est avec Cronnix
            http://www.macupdate.com/info.php/id/7486

            Ce logiciel permet de programmer des scripts à des heures/jours/semaines/mois précis.
            Il suffit de faire un petit script AppleScript qui dit :

            tell application "FileMaker Pro" to quit

            Tu sauvegardes ce script en tant qu'Application et dans les Options tu coches Exécutable uniquement. l'Option Écran de démarrage doit être décochée.
            Tu choisis l'heure et la date dans Cronnix puis tu choisis ton script et voilà!

            Merci à tous pour votre aide!