Esegui un AppleScript che richiede la pressione di un tasto mentre lo schermo è bloccato?

4

Ho un semplice AppleScript che ha il compito di digitare alcune parole in una casella di testo.

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

Voglio che questo script venga eseguito ogni volta che si attiva lo screen saver, e ancora ogni volta che il mio screen saver si disattiva. Ho installato ScriptSaver e funziona perfettamente. Fin qui tutto bene.

Tranne che il mio schermo si blocca quando si attiva lo screen saver. Ciò significa che quando il mio script dice a TextEdit di attivarsi, il computer apre la sua finestra di login e pensa che sto scrivendo "Hello World!" come password Non ideale

Ho provato a fare in modo che lo screen saver richieda una password dopo 5 secondi, invece che immediatamente, ma non va bene: il processo di attivazione di TextEdit riattiva lo schermo.

C'è un modo per attivare TextEdit e digitare parole sullo sfondo , senza far credere al mio computer che sto provando a sbloccare lo schermo?

    
posta hairboat 22.08.2014 - 00:49
fonte

2 risposte

3

No, non penso che puoi farlo nel modo che desideri.

  1. Ogni interazione umana su un PC durante lo screensaver tenta di disattivarla. (Come spostare il mouse, premendo un tasto, ad es.)

  2. La maggior parte del tempo di utilizzo di Applescript viene utilizzata per script di una GUI (come nel tuo caso - > specifica l'applicazione TextEdit - > non fa altro che aprire Textedit come faresti facendo doppio clic)

Quindi per darti un modo che dovrebbe funzionare:

fai un applescript che scrive direttamente il testo in un file e poi apri il file con il testo, se necessario.

qualcosa del genere:

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
    
risposta data 22.08.2014 - 07:34
fonte
0

Hai provato (non so se funzionerà):

attiva l'applicazione "TextEdit"

ritardo 0,2

indica all'applicazione "Eventi di sistema" per dire al processo "TextEdit" di premere "Hello World!"

    
risposta data 17.09.2014 - 23:26
fonte

Leggi altre domande sui tag