Wie mit AppleScript prüfen ob Apple Mail läuft?

Dieses Thema im Forum "Software" wurde erstellt von martzell, 11. April 2005.

  1. martzell

    martzell New Member

    Hallo zusammen,
    die AppleScript-Anweisung tell application "Mail" startet Mail wenn nicht geöffnet. Wie kann ich mit AppleScript abfragen ob Mail läuft?
    Danke, Martin
     
  2. LicetBovi

    LicetBovi New Member

    Das hier ist zwar etwas umständlich, aber es sollte immerhin funktionieren:
    PHP:
    tell application "Finder"
        
    set myVar to (get (application processes))
        
    set myTest to false
        repeat with ii in myVar
            set myApp to name of ii 
    as string
            
    if myApp is "Mail" then set myTest to true
        end repeat
        display dialog myTest 
    as string
    end tell
     
  3. Paul Muad.Dib

    Paul Muad.Dib New Member

    ähhh, ist nicht

    tell application "Mail" to activate

    einfacher?

    Gruß,
    PM
     
  4. LicetBovi

    LicetBovi New Member

    Das aktiviert Mail, bzw. startet es, wenn es nicht läuft.

    So wie ich martzell verstanden habe, will er nur prüfen, ob es läuft, ohne die Anwendung zu starten.
    :rolleyes:
     
  5. Paul Muad.Dib

    Paul Muad.Dib New Member

    Hast recht. Habe mich verlesen …

    :embar:

    Gruß,
    PM
     
  6. martzell

    martzell New Member

    Genau das habe ich gesucht.
     
  7. affenschwanz

    affenschwanz @ffenschwanzerl

    gibts eigentlich gute Literatur zu AppleScript???

    Gruss
     
  8. LicetBovi

    LicetBovi New Member

    Ich fand den AppleScript Language Guide hilfreich, aber der ist nicht mehr ganz frisch (genau genommen riecht er sogar schon etwas muffig).

    Ansonsten gibt's noch www.fischer-bayern.de, da findet sich auch eine Rubrik mit Büchern.
     
  9. affenschwanz

    affenschwanz @ffenschwanzerl

    danke!
    schaus mir mal an..

    Gruss
     
  10. Fischer-Bayern

    Fischer-Bayern New Member

    Es geht in der Tat noch etwas kürzer:

    tell application "Finder"
    ____set theApps to name of every process whose visible is true
    ____
    if theApps contains "Mail" then
    ________display dialog "Mail läuft!"
    ____else
    ________display dialog "Mail läuft nicht."
    ____end if
    end tell


    Dadurch erspart man auch die Schleife und somit Zeit.
     
  11. LicetBovi

    LicetBovi New Member

    Stimmt - so ist es eleganter.
    (Ist ja auch kein Wunder - bei der Quelle ;) )
    Allerdings wird Mail auch dann als nicht als laufend angezeigt, wenn es ausgeblendet ist.
    Auf den Zusatz "whose visible is true" sollte also verzichtet werden.
     
  12. Mäkki

    Mäkki New Member

    noch kürzer:

    tell application "System Events"
    if (the name of every process) contains "Mail" then
    display dialog "Mail läuft"
    else
    display dialog "Mail läuft nicht"
    end if
    end tell
     

Diese Seite empfehlen