在单击鼠标循环中重新启动不起作用

reboot in a click mouse loop not working

我正在尝试在点击鼠标循环 运行ning 的特定时间重新启动 PC。我使用了 if + else 条件,当我尝试 运行 这两段代码时,脚本可以正常工作,但是当放在一起时,只有鼠标点击循环是 运行ning,而计时器进程不起作用。有什么想法吗?

^+f::
  SetTimer, Chronos, 500
  return


Chronos:

  FormatTime, TimeToMeet,,HHmm
  If (TimeToMeet = 2018) 
  {
    Run, %comspec% /c shutdown -r -f -t 0
  } 
  else
  {
    loop
    {
      MouseClick, Left, 787, 512, 1,0
      Sleep 10000
    }
  }

  Return

k::Pause

循环语句永远不会退出。

您正在使用计时器,所以我假设您希望代码是事件驱动的。如果是这种情况,请将 MouseClick 设为计时器的一部分,而不是休眠循环。

如果您不想使用事件,请将关闭子句放在循环中

每 10 秒点击 (787,512) 直到 20:18,此时它关闭计算机

^+f::
  SetTimer, Chronos, 500
  return


Chronos:

  loop
  {
      FormatTime, TimeToMeet,,HHmm
      If (TimeToMeet = 2018) 
      {
         Run, %comspec% /c shutdown -r -f -t 0
      }
      MouseClick, Left, 787, 512, 1,0
      Sleep 10000
  }

k::Pause

每 10 秒点击 (787,512) 直到 20:18,此时它关闭计算机

F2:: start()
F3:: stop()

start()
{
  global running := 1
  while running {
    FormatTime TimeToMeet,,HHmm
    if (TimeToMeet = 1349 )
      Shutdown 13
    click 787,512
    sleep 10000
  }
}

stop()
{
  global running := 0
}