2009-10-13 5 views
5

Come posso ottenere un elenco di applicazioni in esecuzione nello stesso ordine in cui appaiono quando si esegue ⌘ + ⇥ da un applecript?Applescript - elenca tutte le applicazioni in esecuzione

I.e. se uso TextEdit, quindi Anteprima, quindi iCal, l'ordine è

iCal, Anteprima, TextEdit

This question che ha chiesto se ci fosse un'API che potrebbe produrre questo elenco fornito questa risposta:

$ cd /System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework

$ LaunchServices nm | grep __LSCopyApplicationArrayInFrontToBackOrder

Ma come posso accedere a questo elenco da un applecript?

risposta

5

tell application "System Events" to get name of every process

E sembra ordinati per data di lancio per me, ma non so se questo è affidabile o meno.

Per quanto riguarda l'utilizzo della risposta da SO: dovresti creare un piccolo programma (o OSAX) in (Objective) -C per accedere a tale routine, rendere il programma scriptable, quindi chiamare quel programma/OSAX dal tuo script.

+1

Questo non è sicuramente un elenco di applicazioni Weaver Comando-Tab. Non è nemmeno un elenco di app; è un elenco di processi di basso livello, come gli eventi di sistema. –

5

Non è sicuro come il modo per ordinarli Ma questo elenca le applicazioni che non sono solo sfondo

tell application "System Events" to get the name of every process whose background only is false