Escrevendo um Script AutoHotkey Simples (pressione uma tecla a cada X segundo na área de trabalho)

2

Eu preciso pressionar qualquer tecla inútil (como F11) a cada 5 minutos ou menos para manter as janelas ativas (se ficar inativa por 5 minutos, ela será bloqueada).

Mas eu preciso que a tecla seja pressionada na área de trabalho (para que ela não afete nenhuma janela aberta).

Eu tentei

Loop
{
   ControlSend, {F11}, WindowsApplication1
   Sleep, 100000
}

mas parece não funcionar.

obrigado.

    
por Unorthodox 20.11.2013 / 10:59

1 resposta

1

Por que você deseja enviar F11 para a área de trabalho?
Se é apenas para manter seu computador acordado, você pode usar o seguinte script:

#SingleInstance, force
#Persistent
SetTimer, NoSleep, 30000
Return

NoSleep:
 DllCall( "SetThreadExecutionState", UInt,0x80000003 )
Return

De Microsoft :

SetThreadExecutionState function
Enables an application to inform the system that it is in use, thereby preventing the system from entering sleep or turning off the display while the application is running.

Também é possível emular a ação do mouse para impedir que o sistema durma (se acima script de alguma forma não funciona para você):

Loop {
    Sleep, 30000
    MouseMove, 1, 0, 1, R  ;Move the mouse one pixel to the right
    MouseMove, -1, 0, 1, R ;Move the mouse back one pixel
}

Portanto, não há necessidade de emular, na verdade, pressionando uma tecla .

    
por 25.11.2013 / 11:01

Tags