Quiero crear un script AutoHotKey que espere una ventana y le envíe algunas pulsaciones de teclas, pero las pulsaciones de teclas se repiten de forma predeterminada.

Quiero crear un script AutoHotKey que espere una ventana y le envíe algunas pulsaciones de teclas, pero las pulsaciones de teclas se repiten de forma predeterminada.

Quiero un script AutoHotKey que espere una ventana en particular y luego envíe pulsaciones de teclas a esa ventana. Sin embargo, dado que la espera se realiza en bucle, las claves se envían una y otra vez.

Digamos que quiero esperar a la Calculadora de Windows y luego enviarle "12345". Mi primer intento fue:

#SingleInstance force
Loop
{
WinWaitActive, Calc
{
    Send, 12345
}

Este script obviamente envía "12345" una y otra vez ya que no salgo del bucle.

Si inserto una "interrupción" después de la declaración de envío, el ciclo termina pero también todo el script.

¿Cuál es el patrón estándar para manejar esto?

Respuesta1

Supongo que desea dejar de enviar 12345hasta que active la ventana nuevamente (u otra ventana con el mismo nombre). Entonces usaWinWaitNotActive

#SingleInstance force
Loop
{
WinWaitActive, Calc
{
    Send, 12345
    WinWaitNotActive, Calc
}

información relacionada