Como ativar uma janela específica quando um determinado período de tempo passa sem qualquer atividade apenas nessa janela específica?

0

Amigos Eu quero que, quando uma janela específica estiver inativa por 10 minutos, ela primeiro ative essa janela e, em seguida, envie a tecla f4. Eu trabalho em algum software online e ele faz o logout quando o software está ocioso ou inativo por 10 minutos e para fazer login novamente é um trabalho muito trabalhoso e agitado, então eu quero quando 10 minutos passarem sem nenhuma atividade (somente naquela janela) janela deve ser ativada e a tecla f4 deve ser enviada automaticamente.

Esse título do Windows, como mostrado na janela espião, é este -

Finacle - Microsoft Internet Explorer

ahk_class IEFrame

ahk_exe IEXPLORE.EXE

    
por ramji 30.10.2015 / 14:18

1 resposta

0

Você poderia tentar algo assim ... Eu não posso testá-lo. Há muitas coisas que podem fazer com que ele não funcione, então você pode precisar experimentar um pouco.

Primeiro inicie o script (ele continuará funcionando) e, em seguida, ative a janela do IE usando F4 ou F10, após o que você verá a dica pop-up e ela deve ser reativada a cada 10 minutos da última vez que foi ativada manualmente.

#NoEnv
#Persistent

winFinacle := "Finacle - Microsoft Internet Explorer ahk_exe IEXPLORE.EXE"

return


#IfWinActive, %winFinacle%
~F4::           ; tilde allows pass-through of the keystroke to the program
~F10::
KeepFinacleActive:

    ToolTip Activating Finacle...
    sleep 1000
    tooltip

    ; Enable timer to call itself after desired time once user kicks things off with initial key press
    SetTimer, KeepFinacleActive, 600000      ; 10min * 60sec/min * 1000ms/sec = 600000

    BlockInput, On                  ; block user input in case this happens in the middle of other user activity
    WinActivate, %winFinacle%
    WinWaitActive,,,2               ; wait a max of 2 seconds for it to be active
    if not ErrorLevel               ; if there was no error...
    {
        sleep 200                   ; give IE some nominal time to load (adjust as needed)
        SendInput {F10}             ; send a keystroke (this will be a duplicate keystroke first time user executes manually)
    }
    else  ; else if we couldn't find the window...
    {
        tooltip Couldn't find window during attempted activation...
        sleep 2000
        tooltip
    }
    BlockInput, Off

return

#IfWinActive    ; disable for following commands (if any)
    
por 02.11.2015 / 02:10