2010-02-03 5 views
0

J'ai l'AppleScript suivant (ci-dessous). J'essaye de confirmer l'envoi d'un email. Cet AppleScript est déjà connecté avec succès à une "règle de boîte d'envoi" (en utilisant Mail Act-On) dans Mail.app, et j'ai vérifié qu'il s'exécutait quand il est supposé le faire (au moment de l'envoi).Empêcher le courrier électronique d'être envoyé via Applescript

Le but ultime est d'ouvrir une boîte de dialogue à l'utilisateur, en lui demandant s'il veut "vraiment" envoyer l'email. Si ce n'est pas le cas, arrêtez l'envoi de l'e-mail.

Le script en cours tente de supprimer le message, mais cela ne fonctionne pas. Des idées?

using terms from application "Mail" 
    on perform mail action with messages messageList for rule theRule 

     repeat with thisMessage in messageList 

      set theResult to display dialog "Send?" buttons {"OK", "Cancel"} default button 2 
      if button returned of theResult is not equal to "OK" then 
       delete thisMessage 
      end if 

     end repeat 
    end perform mail action with messages 
end using terms from 

Répondre

1

Je pense qu'un bouton « Annuler » dans un display dialog prendra fin immédiatement l'exécution de votre script qui signifie que la ligne ne delete thisMessage est exécuté.

Vous pouvez essayer de changer cela à quelque chose comme:

set theResult to display dialog "Send?" buttons {"OK", "No, Delete Message"} default button 2 
if button returned of theResult is not equal to "OK" then 
... 
Questions connexes