AutoHotkey 用 DllCall 隐藏鼠标光标的3种玩法

发布时间:2026/11/4 1:18:35

AutoHotkey 用 DllCall 隐藏鼠标光标的3种玩法 AutoHotkey 用 DllCall 隐藏鼠标光标的3种玩法【免费下载链接】AutoHotkeyAutoHotkey - macro-creation and automation-oriented scripting utility for Windows.项目地址: https://gitcode.com/gh_mirrors/au/AutoHotkeyAutoHotkey 是 Windows 上免费开源的自动化脚本工具本仓库的 v1 源码可以帮你理解它如何调用 Windows API。录屏、演示时屏幕角落那个晃动的光标很抢镜用DllCall调一下ShowCursor两三行脚本就能让它消失恢复也只需一行。 谁会用得上录屏做教程光标不再抢镜画面更干净演示与讲解观众视线聚焦在内容上不被指针带偏大屏展示机待机画面保持整洁鼠标移动后又能自动找回光标 30秒跑起来先拿到源码用 Visual Studio 编译出可执行的AutoHotkey.exe再把脚本存成.ahk文件双击运行即可。git clone https://gitcode.com/gh_mirrors/au/AutoHotkeyREADME 里的编译步骤用 Visual Studio 打开仓库根目录的AutoHotkeyx.sln选择 Build 和 PlatformWin32 或 x64执行 Build 即可产出AutoHotkey.exe。⌨️ 最小可用示例AutoHotkey 脚本本身没有内置的开关光标命令但DllCall允许直接调用任意 Windows APIShowCursor正好控制光标显隐。; 调用 Windows API ShowCursor传 0 隐藏传 1 恢复显示 DllCall(ShowCursor, int, 0) ; 需要指针回来时把参数换成 1 再执行一次即可 ; DllCall(ShowCursor, int, 1)DllCall第一个参数ShowCursor指定要调用的系统函数第二个参数声明参数类型第三个是具体取值。ShowCursor按计数工作每次调用会增减一个内部计数计数小于 0 时光标才真正隐藏。所以上下文里每调一次int, 0恢复时就要相应地多调一次int, 1。️ 换个场景怎么玩热键切换 移动自动恢复演示中常按一个热键进入无光标状态观众一挪鼠标就自动恢复省去手动切换。; F9 热键切换光标显隐隐藏时鼠标一动就自动恢复 F9:: static off : false off : !off DllCall(ShowCursor, int, off ? 0 : 1) return ; 进入隐藏状态后鼠标任意移动即恢复显示 $MouseMove:: if (off) DllCall(ShowCursor, int, 1) return效果按 F9 后光标消失适合全屏讲解期间只要移动一下鼠标光标立刻回来不会找不到指针。 它是怎么实现的source/hook.cpp安装键盘/鼠标钩子负责热键触发、按键拦截和输入注入。source/keyboard_mouse.cppSend命令背后的键鼠事件底层实现基于SendInput等 API。source/keyboard_mouse.h鼠标点击、移动等内部函数的接口声明。source/DllCall.cppDllCall命令的执行逻辑负责参数打包与 Windows API 调用——本例隐藏光标正是走这条路。 踩坑与高频问题光标隐藏了为什么按一次恢复命令没反应ShowCursor是引用计数隐藏次数和恢复次数要一一对应恢复调用少一次计数就回不到 0。脚本被关掉后光标一直没回来怎么办ShowCursor是全局状态关闭脚本不会自动还原务必在退出逻辑里补上恢复调用。AutoHotkeyx.sln直接运行不行它产出的是AutoHotkey.exe解释器要用它打开.ahk脚本编译配置选 Win32 或 x64 平台详见 README。 收尾这套写法能控制的是 Windows 系统光标受引用计数约束个别自绘光标的应用和独占全屏的程序不一定按预期表现。想深入看参数如何传给 API、热键如何拦截输入从source/DllCall.cpp和source/hook.cpp入手即可。【免费下载链接】AutoHotkeyAutoHotkey - macro-creation and automation-oriented scripting utility for Windows.项目地址: https://gitcode.com/gh_mirrors/au/AutoHotkey创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/11/4 1:13:32

阅读APP书源一次配好:26个实测书源,3步导入

阅读APP书源一次配好:26个实测书源,3步导入 【免费下载链接】Yuedu 📚「阅读」自用书源分享 项目地址: https://gitcode.com/gh_mirrors/yu/Yuedu 阅读APP本身没有书籍内容,阅读APP书源才是让它干活的关键:靠书…

2026/11/4 1:13:32

防抖 Debouncing 深度解析:一个定时器如何吞掉 20 次调用

防抖 Debouncing 深度解析:一个定时器如何吞掉 20 次调用 【免费下载链接】30-seconds-of-interviews A curated collection of common interview questions to help you prepare for your next interview. 项目地址: https://gitcode.com/gh_mirrors/30/30-secon…

2026/11/4 2:08:41

3步跑通 Raphael 源码构建:环境自检、产物选择与定制指南

3步跑通 Raphael 源码构建:环境自检、产物选择与定制指南 【免费下载链接】raphael JavaScript Vector Library 项目地址: https://gitcode.com/gh_mirrors/ra/raphael 克隆下来 raphael 仓库,根目录一堆东西:dev/ 源码目录、Gruntfil…

2026/11/4 2:08:41

一、python基础——环境与工具

一、uv 1. 安装 uv 是一个用 Rust 编写的、极其快速的 Python 包和项目管理器。 安装命令 Windows(PowerShell): powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"验证命令 uv --version2. 使…

2026/11/3 7:47:06

面向复杂光照与角度的宠物面部识别鲁棒性增强策略

在智慧养宠时代,基于视觉的宠物身份识别技术正逐步从实验室走向家庭应用。然而,与配合度高的人类不同,宠物是典型的“非合作生物识别对象”——它们不会主动配合摄像头调整姿态,更无法控制光照环境。实际应用中,我们常…

2026/11/3 14:24:53

SSM电子书店源码全解析:结构、原理、部署与排错实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/11/4 0:03:20

AI辅助技术栈评估:提升研发决策效率60%

1. 项目背景与核心价值技术决策一直是研发团队面临的重大挑战。随着技术生态的快速演进,技术栈的选择、维护和迭代变得愈发复杂。我们团队在过去两年里,先后经历了三次重大技术栈迁移,每次都需要投入大量人力进行技术评估和风险分析。直到去年…

2026/11/4 0:03:20

从生成Token到直接决策:Jev如何重塑AI Agent工程实践

1. 从"生成文字"到"拍板决策":Jev 到底在解决什么问题大多数人第一次接触大模型,脑子里建立的模型是"输入问题、输出文字"。你问它今天天气怎么样,它给你一段描述;你让它写个周报,它给你…

2026/11/4 0:03:20

32G统一内存跑大模型:内存账、TPS实测与端云分流

想在一台 32G 统一内存的小主机上把大模型跑成"日常可用",这件事我前后折腾了小半年。标题里说的这台 Mac mini M6,是我们这次讨论的目标平台,具体到手规格以实物为准;但下面这套推算方法和实测思路,对任何统…

2026/11/3 7:47:06

面向复杂光照与角度的宠物面部识别鲁棒性增强策略

在智慧养宠时代,基于视觉的宠物身份识别技术正逐步从实验室走向家庭应用。然而,与配合度高的人类不同,宠物是典型的“非合作生物识别对象”——它们不会主动配合摄像头调整姿态,更无法控制光照环境。实际应用中,我们常…

2026/11/3 14:24:53

SSM电子书店源码全解析:结构、原理、部署与排错实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑