Tengo un script que comprueba las cargas de las aplicaciones si están abiertas, y las cierra si es así, y las abre si no.
Hasta ahora tenía una simple:
tell application "System Events"
if exists (process "Caffeine") then
tell application "Caffeine" to quit
else
tell application "Caffeine" to activate
end if
...
end tell
Para recorrer los programas. Hoy he tenido que editar algunos programas y he pensado "esto podría ser mucho más sencillo con un array y un bucle for"
Así que probé esto:
set theList to {"Caffeine", ...}
tell application "System Events"
repeat with prog in theList
if exists (process prog) then
tell application prog to quit
else
tell application prog to activate
end if
end repeat
end tell
Pero ahora por alguna razón me da un error, cada vez que ejecuto el script:
error "System Events obtuvo un error: La conexión no es válida". número -609
El error aparece siempre desde un punto diferente en el script.
Estoy muy confundido por qué esto no funciona.
¿Puede alguien ayudarme a conseguir que esto funcione?