¿Ejecutar un AppleScript que requiere pulsaciones mientras la pantalla está bloqueada?

4

Tengo un AppleScript muy simple cuyo trabajo es escribir algunas palabras en un cuadro de texto.

tell application "TextEdit"
  activate
end tell
delay 0.2
tell application "System Events"
  keystroke "Hello World!"
  keystroke return
end tell

Quiero que esta secuencia de comandos se ejecute cada vez que se active el protector de pantalla y, de nuevo, cada vez que se desactive el protector de pantalla. Instalé ScriptSaver y funciona perfectamente. Hasta ahora tan bueno.

Excepto mi pantalla se bloquea cuando se activa el protector de pantalla. Esto significa que cuando mi secuencia de comandos le dice a TextEdit que se active, la computadora abre su ventana de inicio de sesión y piensa que estoy escribiendo "¡Hola mundo!" como contraseña No es ideal.

Intenté que el protector de pantalla requiera una contraseña después de 5 segundos, en lugar de hacerlo de inmediato, pero no fue bueno: el proceso de activación de TextEdit simplemente vuelve a activar la pantalla.

¿Hay alguna forma de activar TextEdit y escribir palabras en segundo plano , sin que mi computadora piense que estoy intentando desbloquear la pantalla?

    
pregunta hairboat 22.08.2014 - 00:49

2 respuestas

3

No, no creo que puedas hacer esto de la manera que quieras.

  1. Cada interacción humana en una PC durante el protector de pantalla intenta desactivarla. (Como mover el mouse, presionar una tecla, por ejemplo)

  2. Applescript se usa la mayoría del tiempo para crear una GUI (como en su caso - > tell a la aplicación TextEdit - > no hace más que abrir Textedit como lo haría haciendo doble clic)

Por lo tanto, para ofrecerte una manera que debería funcionar:

haga un applecript que escriba el texto en un archivo directamente y luego abra el archivo con el texto si es necesario.

algo como esto:

tell application System Events
    do shell script "echo 'your text that you wanna type' > /path/to/the/file/where/the/text/stands/in"
end tell

tell application TextEdit
    open /path/to/the/file/where/the/text/stands/in
end tell
    
respondido por el konqui 22.08.2014 - 07:34
0

Has intentado (no sé si funcionará):

activar aplicación "TextEdit"

retraso 0.2

diga a la aplicación "Eventos del sistema" que diga al proceso "TextEdit" que presione "¡Hola, mundo!"

    
respondido por el user91047 17.09.2014 - 23:26

Lea otras preguntas en las etiquetas