在日常编写和使用 AutoHotkey (AHK) 脚本时,我们经常会遇到一个痛点:如果脚本或程序需要管理员权限,把它放入系统的“启动”文件夹后,每次开机都会弹出一个烦人的 UAC(用户账户控制)确认窗口。

如果不点确认,脚本就不会运行;如果关闭系统 UAC,又会降低系统的安全性。

有没有完美的解决办法?答案是:Windows 计划任务 (Task Scheduler)。通过在计划任务中设置“以最高权限运行”,我们就可以完美绕过 UAC 弹窗,实现静默开机自启。

这段代码利用 AHK 调用 Windows COM 对象,实现了纯代码、无黑框地创建、查询、删除系统计划任务。

注意: 本文代码基于 AutoHotkey v1 编写。计划任务优先级极高,适合用于需要底层权限的常驻脚本。

 

💡 核心功能速览

这段脚本并非简单地调用 schtasks.exe 命令行工具,而是优雅地使用了系统的 Schedule.Service COM 对象。它包含以下核心能力:

  1. 自动提权:双击运行脚本时,自动申请管理员权限。

  2. 智能切换(Toggle):同一个函数,任务不存在则创建,存在则删除,非常适合做软件设置里的“开机自启”开关。

  3. 免 UAC 运行:自动设置为 RunLevel_Highest(最高权限)。

  4. 全套 API:支持检查任务是否存在、获取任务执行路径、获取系统所有计划任务列表。

 

示例代码:

声明:站内资源为整理优化好的代码上传分享与学习研究,如果是开源代码基本都会标明出处,方便大家扩展学习路径。请不要恶意搬运,破坏站长辛苦整理维护的劳动成果。本站为爱好者分享站点,所有内容不作为商业行为。如若本站上传内容侵犯了原著者的合法权益,请联系我们进行删除下架。