Apple Script : Fermeture auto. à heure fixe

Résolu
Hëm:D -  
Hëm:D Messages postés 3 Statut Membre -
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. Gihef Messages postés 5165 Statut Contributeur 2 781
     
    Bonjour,

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

    --
    1
  2. Hëm:D Messages postés 3 Statut Membre 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
  3. Gihef Messages postés 5165 Statut Contributeur 2 781
     
    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.

    --
    0
  4. Hëm:D Messages postés 3 Statut Membre 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?
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Hëm:D Messages postés 3 Statut Membre 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!
    0