Autohotkey 编写简单的自动热键脚本(在桌面上每隔X秒按一次键)

Autohotkey 编写简单的自动热键脚本(在桌面上每隔X秒按一次键),autohotkey,Autohotkey,我需要每5分钟或更短时间按一次无用的键(如F11),以保持windows处于活动状态(如果它在10分钟内处于非活动状态,它将锁定) 但是我需要在桌面上按下这个键(这样就不会影响任何打开的窗口) 我试过了 Loop { ControlSend, {F11}, WindowsApplication1 Sleep, 100000 } 但似乎不起作用 谢谢 编辑:我的当前脚本: #NoTrayIcon NumLock::Run Calc.exe PrintScreen::Run "C:

我需要每5分钟或更短时间按一次无用的键(如F11),以保持windows处于活动状态(如果它在10分钟内处于非活动状态,它将锁定)

但是我需要在桌面上按下这个键(这样就不会影响任何打开的窗口)

我试过了

Loop
{
   ControlSend, {F11}, WindowsApplication1
   Sleep, 100000
}
但似乎不起作用

谢谢

编辑:我的当前脚本:

#NoTrayIcon

NumLock::Run Calc.exe

PrintScreen::Run "C:\Windows\Sysnative\SnippingTool.exe"

; When I press Insert, I want to Show Desktop
Insert::Run, "%A_APPDATA%\Microsoft\Internet Explorer\Quick Launch\Shows Desktop.lnk"

; When I press Pause/ Break, I want to Lock the Computer
Pause::DllCall("LockWorkStation")

#IfWinActive, ahk_class CabinetWClass
~MButton::Send !{Up}
#IfWinActive

Return

只需每X分钟移动一次光标:

#Persistent
SetTimer, MoveMouse

MoveMouse:
    If ( A_TimeIdle > 300000 ) {
      MouseMove, 1 , 1,, R
      MouseMove, -1,-1,, R
    }
Return

代码采用自。

只需每隔X分钟移动光标一次:

#Persistent
SetTimer, MoveMouse

MoveMouse:
    If ( A_TimeIdle > 300000 ) {
      MouseMove, 1 , 1,, R
      MouseMove, -1,-1,, R
    }
Return

代码采用自。

这绝对不需要自动热键。
只需禁用屏幕保护程序。
右键单击桌面
单击个性化(Vista/7/8)或属性(XP)
转到屏幕保护程序选项
禁用屏幕保护程序

您可能还想禁用诸如“x分钟后关闭显示”、“x分钟后进入睡眠”和“x分钟后打开硬盘驱动器”之类的功能。
您可以在poweroptions中找到这一点。屏幕保护程序选项中有一个按钮可以到达那里

编辑:使用自动热键禁用屏幕保护程序的另一种方法是以下脚本:

#Persistent
Menu, Tray, Icon, User32.dll, 4
Menu, Tray, Tip, Screen Saver Disabled !!!
OnExit, ScreenSaveActivate
DllCall("SystemParametersInfo", Int,17, Int,0, UInt,NULL, Int,2)
SetTimer, CheckScreenSaveActive, 999
Return

CheckScreenSaveActive:
DllCall("SystemParametersInfo", Int,16, UInt,NULL, "UInt *",SSACTIVE, Int,0)
If SSACTIVE
   DllCall("SystemParametersInfo", Int,17, Int,0, UInt,NULL, Int,2)
Return

ScreenSaveActivate:
DllCall("SystemParametersInfo", Int,17, Int,1, UInt,NULL, Int,2)
ExitApp
Return

这是SKAN在ahk论坛上创建的。

这绝对不需要自动热键。
只需禁用屏幕保护程序。
右键单击桌面
单击个性化(Vista/7/8)或属性(XP)
转到屏幕保护程序选项
禁用屏幕保护程序

您可能还想禁用诸如“x分钟后关闭显示”、“x分钟后进入睡眠”和“x分钟后打开硬盘驱动器”之类的功能。
您可以在poweroptions中找到这一点。屏幕保护程序选项中有一个按钮可以到达那里

编辑:使用自动热键禁用屏幕保护程序的另一种方法是以下脚本:

#Persistent
Menu, Tray, Icon, User32.dll, 4
Menu, Tray, Tip, Screen Saver Disabled !!!
OnExit, ScreenSaveActivate
DllCall("SystemParametersInfo", Int,17, Int,0, UInt,NULL, Int,2)
SetTimer, CheckScreenSaveActive, 999
Return

CheckScreenSaveActive:
DllCall("SystemParametersInfo", Int,16, UInt,NULL, "UInt *",SSACTIVE, Int,0)
If SSACTIVE
   DllCall("SystemParametersInfo", Int,17, Int,0, UInt,NULL, Int,2)
Return

ScreenSaveActivate:
DllCall("SystemParametersInfo", Int,17, Int,1, UInt,NULL, Int,2)
ExitApp
Return


它是由SKAN从ahk论坛创建的。

它不起作用,应该放在单独的脚本文件中吗?因为我将其附加到现有脚本中。这取决于脚本中的其他内容。发布整件事肯定会有帮助。这也正是我要做的。@Unorthodox究竟是什么机制导致您的会话被锁定?10分钟内没有活动屏幕保护程序激活,并输入密码登录。它不起作用,应该在单独的脚本文件中吗?因为我将其附加到现有脚本中。这取决于脚本中的其他内容。发布整件事肯定会有帮助。我也会这么做。@Unorthodox究竟是什么机制导致您的会话被锁定?10分钟内无活动屏幕保护程序激活,并输入密码登录。我不能,需要管理员权限。(公司的PC)但您可以运行自动热键脚本吗?哦,你能告诉我最后一个脚本到底是做什么的吗?如果这个脚本不起作用,我真的帮不了你。我想你需要更多的特权才能继续下去。如果发送击键是唯一有效的方法,那么只需每分钟发送Ctrl或Shift…啊,击键或鼠标移动/单击。我不能,需要管理员权限。(公司的PC)但您可以运行自动热键脚本吗?哦,你能告诉我最后一个脚本到底是做什么的吗?如果这个脚本不起作用,我真的帮不了你。我想你需要更多的特权才能继续下去。如果发送击键是唯一有效的方法,那么只需每分钟发送Ctrl或Shift…啊**,击键或鼠标移动/点击。