Obtenga la aplicación actual de dos instancias con el mismo nombre mediante Apple Script

1

¿Cómo abordar una ventana activa de una aplicación activa de AppleScript cuando se ejecutan dos instancias de la misma aplicación?

La siguiente secuencia de comandos se dirige a la otra aplicación. Probablemente porque el nombre y la identificación de la aplicación son los mismos y selecciona solo el primero de la lista por nombre.

tell application (path to frontmost application as text) to tell front window...

Utilizo ese script para maximizar la ventana actual pero no funciona para las dos instancias de la misma aplicación:

tell application "Finder" to set {0, 0, dtw, dth} to bounds of window of desktop
try
    tell application (path to frontmost application as text) to tell front window
        set bounds to {0, 0, dtw, dth}
    end tell
on error
    tell application "System Events" to tell (process 1 where it is frontmost)
        try
            click (button 1 of window 1 where subrole is "AXZoomButton")
        end try
    end tell
end try
    
pregunta myneur 12.02.2016 - 21:05

1 respuesta

2

No es posible obtener la instancia correcta de la aplicación más avanzada porque estas dos instancias tienen la misma ruta y el mismo identificador de paquete, la aplicación siempre será la primera instancia abierta.

Debes usar el primer plano process , como esto:

tell application "System Events"
    tell (first process whose frontmost is true) to tell front window to if exists then
        set position to {0, 0}
        set size to {dtw, dth}
    end if
end tell
    
respondido por el jackjr300 14.02.2016 - 16:27

Lea otras preguntas en las etiquetas