¿Rellenando las entradas de SecurityAgent si existen?

1

Estoy intentando automatizar la exportación de mis llaveros (sistema y usuario), y mientras mi script funciona si elimino los valores establecidos, no lo hago después de agregarlos.

El error que estoy recibiendo es

System Events got an error: Can’t get text field 1 of group 1 of window 1 of process "SecurityAgent". Invalid index.

¿Parece que estoy pidiendo algo que no existe? Aquí está el modal

Yaquíestáelcódigo.

tellapplication"System Events"
    repeat while exists (processes where name is "SecurityAgent")
        tell process "SecurityAgent"
            set value of text field 1 of group 1 of window 1 to "adminuser"
            set value of text field 2 of group 1 of window 1 to "adminpass"
            click button "Allow" of group 1 of window 1
        end tell
        delay 0.2
    end repeat
end tell

Si es posible, me gustaría detectar si hay campos antes de intentar configurar para que esto funcione con o sin solicitud de contraseña

    
pregunta ehime 18.04.2015 - 00:17

1 respuesta

3

Esto funcionó

set appName to "username"
set appPass to "password"

tell application "System Events"
    repeat while exists (processes where name is "SecurityAgent")
        tell process "SecurityAgent"
            if exists (text field 1 of window 1) then
                set value of text field 1 of window 1 to appName
                set value of text field 2 of window 1 to appPass
            end if
            click button "Allow" of group 1 of window 1
        end tell
        delay 0.2
    end repeat
end tell
    
respondido por el ehime 18.04.2015 - 00:29

Lea otras preguntas en las etiquetas