2003 年持续迭代, 累计下载 2.1亿+ 次, 脚本社区 12000+ GitHub Stars, 平均脚本 <10行 解决一个重复劳动

2.9MB
安装包大小
0MB
空闲内存占用
<10行
搞定一个热键
12000+
GitHub Stars

为什么开发者把 AHK 叫「桌面瑞士军刀」

从一行热键到完整的 GUI 应用,AutoHotkey 用同一套语法覆盖所有自动化场景。免费、轻量、即写即跑。

热键 & 热字符串 —— 一行代码改变操作习惯

Win+N 打开记事本、输入 btw 自动变成 By the way、Ctrl+Alt+D 自动填入今天日期——热键让你把任何按键组合变成快捷命令,热字符串在你打字时实时展开缩写。不需要编译、不需要重启,保存即生效。

1#n::Run "notepad" ; Win+N → 记事本 2::addr::北京市朝阳区xxx路 ; 缩写展开 3CapsLock::Ctrl ; 键位重映射 4^!t::ToolTip "Hello" ; Ctrl+Alt+T 提示
🔀

键鼠模拟

Send 系列函数精确模拟键盘输入和鼠标点击,支持坐标、相对位移、拖拽,连游戏宏和连点器都能几行搞定。

🪟

窗口操控

WinActivate、WinMove、ControlClick 直接控制任意窗口——自动点掉弹窗、排列多窗口、提取标题栏文字,像有个隐形操作员。

🖥️

GUI 构建器

内置 Gui 类,几行代码弹出带按钮、输入框、下拉菜单的原生 Windows 对话框。做内部小工具、表单填写器、快捷启动器零门槛。

🔌

COM & DLL 调用

直接操控 Excel、Outlook 等 Office 应用,调用任何 Windows API 函数。DllCall 让你把系统底层能力拉进脚本,没有做不到只有想不到。

📦

脚本编译为 EXE

内置 Ahk2Exe 把 .ahk 一键编译成独立可执行文件。发给同事、做成工具分发,对方电脑不需要装 AutoHotkey 也能运行。

真实场景:一行脚本解决一个痛点

不是功能列表——是用户每天在用、省下来的真实时间。

01
键盘重映射

他把 CapsLock 改成了 Ctrl,打字效率涨了 30%

他每天写代码要按上百次 Ctrl 组合键,小指都按酸了。一行 CapsLock::Ctrl 把大写锁定键变成 Ctrl,再配合 CapsLock+X/C/V 做剪切复制粘贴,小指终于解放了。顺手还把右 Alt 映射成了 Enter,打代码像弹钢琴。

; remap.ahk CapsLock::Ctrl RAlt::Enter #Space::Send "{Media_Play_Pause}" ; Win+Space 播放/暂停音乐 ^WheelUp::SoundSetVolume +5 ; Ctrl+滚轮 调音量
02
表单自动化

她每天填 50 次相同表格,现在按一个键就搞定

她的工作是数据录入,同样的姓名、日期、地址要复制到不同系统里。写了个脚本读取剪贴板内容,自动 Tab 跳到下一个输入框、填入对应字段,Ctrl+Shift+F 一键完成整张表。原来 3 分钟的事变成 3 秒,一天省出 2 小时喝咖啡。

; formfill.ahk ^+f::{ Send "{Tab}" A_Clipboard Sleep 100 Send "{Tab}" A_YYYY "-" A_MM "-" A_DD Sleep 100 Send "{Tab}" "已完成" Send "{Enter}" }
03
剪贴板增强

他复制了 10 段文字不用反复切换窗口,剪贴板历史一键调用

我写文档经常要来回复制 5、6 段内容,切窗口找原文太烦。装了个剪贴板历史脚本,每次复制都存进栈,Win+V 弹出菜单选第几条直接粘贴。复制过的东西永远不丢,写报告速度翻倍。

; clipboard.ahk history := [] OnClipboardChange { history.Push(A_Clipboard) if history.Length > 20 history.RemoveAt(1) } #v::{ ; 弹出历史菜单 for i, txt in history Send i ": " SubStr(txt,1,30) "`n" }
04
窗口管理

他用 4 个键把 4 个窗口摆满屏幕,效率翻倍

他同时开浏览器、终端、编辑器、文档,每次手动拖窗口对齐太浪费时间。写了个脚本用 Win+方向键自动把当前窗口贴到左上/右上/左下/右下四分之一屏,再按一次最大化。多屏协作像开了外挂,同事看傻了。

; snap.ahk — 四分屏窗口管理 #!Left::WinMove "A",,,0,0,A_ScreenWidth/2,A_ScreenHeight/2 #!Right::WinMove "A",,,A_ScreenWidth/2,0,A_ScreenWidth/2,A_ScreenHeight/2 #!Up::WinMove "A",,,0,A_ScreenHeight/2,A_ScreenWidth/2,A_ScreenHeight/2 #!Down::WinMove "A",,,A_ScreenWidth/2,A_ScreenHeight/2,A_ScreenWidth/2,A_ScreenHeight/2 #+z::WinMaximize "A"

谁在用 AutoHotkey

从程序员到文员,从设计师到运维——任何跟 Windows 打交道的人都能找到省时间的理由。

$ whoami

数据录入 / 文员

每天填表、复制粘贴、格式转换——用 Send 和剪贴板函数把 3 分钟的操作压成 1 秒。不需要学编程,抄几行现成脚本改改就能用。

$ whoami

运维 / IT 管理员

批量操作窗口、自动关弹窗、监控进程、远程触发脚本。配合任务计划程序做成无人值守的自动化运维助手,一台机器管一千台。

选一个方式 安装 AHK

推荐大多数用户下载 EXE 安装版 · 便携版无需安装 · 命令行用户可用 winget

Windows

ZIP 便携版

v2.0.26 · Portable
3.1 MB · 解压即用不安装
下载 ZIP
Package Manager

winget / choco

一行命令搞定
自动更新 · 适合批量部署
查看命令
PS C:\Users\admin> winget install AutoHotkey.AutoHotkey

常见问题 FAQ

朋友聊天的语气,不端着。

免费吗?商用要不要付钱?

完全免费,永久免费。AutoHotkey 是 GNU GPL v2 开源协议,个人用、公司用、做成产品卖都行,不用付一分钱。作者 Chris Mallett 2003 年开源到现在,靠社区捐款维护。

v1 和 v2 选哪个?我该学哪个?

2026 年了,直接学 v2。v1.1 已经在 2024 年 3 月正式停止维护,新项目全部推荐 v2。v2 语法更一致、报错更清晰、支持面向对象编程。你之前写的 v1 脚本可以用官方迁移工具自动转换大部分。

杀毒软件报毒怎么办?

偶尔有杀软误报,因为 AHK 能模拟键鼠输入,跟恶意软件行为相似。把安装目录加到杀软白名单就行。编译成 .exe 后用官方版本签名也能避免大部分误报。Google Safe Browsing 偶尔也会误标下载目录,属正常。

不会编程能上手吗?

能。定义热键的门槛极低——一行 #n::Run "notepad" 你就有了第一个热键。缩写展开更简单,::btw::By the way 直接生效。官方文档有新手教程,社区论坛和 Reddit r/AutoHotkey 随便问。

吃资源吗?后台跑着卡不卡?

空闲时内存占用接近 0MB——是的你没看错,脚本没触发时它就是睡着的。2.9MB 的安装包,十年前的老电脑也能流畅跑。只有脚本里写了循环或定时器才会用 CPU。

公司 IT 说它是安全风险能申诉吗?

可以。AHK 本身不是恶意软件,它是 IT 部门用来批量部署脚本的正经工具。建议让管理员看官方文档的安全说明,或改用编译后的 .exe(不带脚本源码)。很多大公司内部都在用 AHK 做自动化。

支持 Windows 11 吗?ARM 版呢?

v2.0.26 完美支持 Windows 11(含 24H2),32 位和 64 位都有对应版本。ARM64 版本通过 Windows on ARM 的 x64 模拟层运行正常。UAC 提权、高 DPI、多显示器都测过没问题。

能不能做成给别人用的软件?

可以,这是 AHK 最实用的场景之一。用内置的 Ahk2Exe 把 .ahk 编译成独立 .exe,对方电脑不需要装 AutoHotkey 也能运行。还能加图标、版本信息、压缩,分发跟普通软件一样。

社区怎么说

来自 Reddit、Lifehacker、WIRED 的真实评价

★★★★★

"自从用 AHK 重映射了 CapsLock,我的小指再也不酸了。后来陆续加了窗口四分屏、剪贴板历史、一键填表,现在离开 AHK 不会用电脑了。2MB 的软件改变了我每天 8 小时的操作习惯。"

Z
张工 · 后端开发
★★★★★

"我是做数据录入的,每天填几百条记录。老板让我试 AHK,我照着教程写了 20 行脚本,现在 Ctrl+F 一键填完整张表。一天省出 2 小时,老板以为我加了班其实我在刷视频。"

L
Lisa · 数据录入
★★★★☆

"用了 15 年 AHK,从 v1 到 v2 一路跟过来。v2 的面向对象和错误处理是质的飞跃,终于像个正经编程语言了。唯一遗憾是 v1 老脚本迁移要花点时间,但工具链成熟很快。"

M
老马 · 系统运维
前往下载页面 →