ZTools 是 uTools 的开源实现:一个热键呼出的搜索框,打几个字就能找到应用 / 文件 / 系统设置 / 插件。
它的界面比想象中更简单,打开就是一个输入框,下面按「最佳搜索结果」和「匹配推荐」两段列结果。这篇文章只关心三件事:那个输入框多快 / 常驻内存多少 / 解包出来多大。
三次冷启动的读数差了七倍,这一点先写在前面:1.23 秒和 8.73 秒都是同一台机器上的真实结果。
它就是一个输入框
启动之后屏幕中间出现一个窗口,占位文字写着「搜索应用和指令 / 粘贴文件或图片」。右上角还有一行小字,提示用 Tab 在结果之间跳。
| 项目 | 数值 | 说明 |
|---|---|---|
| 解包目录 | 317 | MB |
| 主程序 ZTools.exe | 223203328 | 字节 |
| resources/app.asar | 15584018 | 字节,界面与逻辑 |
| JS 堆 | 10.9 | MB |
| DOM 节点 | 587 | 个 |
没有主界面,没有侧边栏,也没有工作台。打字之前,那 587 个 DOM 节点里只有一个品牌图标。

装之前先知道三件事
它是 Electron,解包就是绿色版
官方发的是 NSIS 安装包,实际内容在 $PLUGINSDIR/app-64.7z 里。用 7-Zip 拆出来之后目录结构完整,直接跑 ZTools.exe 就行,不写注册表、不建服务。
7z x ZTools-3.2.0-win-x64-setup.exe -oZTools
7z x "ZTools/$PLUGINSDIR/app-64.7z" -oZTools/app
ZTools\app\ZTools.exe --remote-debugging-port=9333
解出来 317 MB,其中 223203328 字节是主程序本身,界面和业务逻辑压在 15584018 字节的 app.asar 里。223 MB 里绝大部分是 Chromium 运行时,摊到单个 exe 上就是 212 MB。
窗口默认是隐藏的
用 Win32 枚举这个进程的窗口,能看到 5 个句柄,可它们全部是不可见状态,包括那个名为 ZTools 的主窗口。
这是热键启动器的标准做法:常驻托盘,按热键才显示。对自动化截图有直接影响,PrintWindow 抓不到隐藏窗口,5 个句柄里只有渲染进程那条 CDP 通道能把画面取出来。
插件市场要联网,离线是空白
面板能打开,标签栏显示「设置 / 插件市场 / 通用设置」,但内容区一片空白,等 32 秒也没变化。换成给 Electron 传 --proxy-server 走代理,结果一样。
它要靠远端接口拉插件列表。断网状态下点「插件市场」,2 秒内返回空白,界面不提示失败,DevTools 里也没有报错,这是最容易让人以为装坏了的地方。核心的本地搜索不受影响。
从解包到能打字
启动耗时波动很大
同一个 exe 连开四次,从进程启动到调试端口可用,分别是 2.13 / 1.30 / 8.73 / 1.23 秒。8.73 秒那次跑在磁盘缓存被打散之后,装完系统补丁、清过临时目录的环境就会这样。
| 次数 | 秒 |
|---|---|
| 第一次 | 2.13 |
| 第二次 | 1.30 |
| 第三次 | 8.73 |
| 第四次 | 1.23 |
热键启动器对启动时间敏感,用户按完热键就要看到输入框。缓存热的时候 1.23 秒能接受,冷的时候 8.73 秒足够让人再按一次,差别是 7.1 倍。
搜索结果的排法
输入之后,结果区固定分三段:最佳搜索结果 / 匹配推荐 / 插件市场搜索。第一段放最可能的 4 个,第二段放相关项,最后一条永远是「插件市场搜索」的入口。
| 查询 | 命中的应用 | 页面文本条目 |
|---|---|---|
| chrome | Google Chrome | 9 |
| 微信 | 微信 / 微信输入法 | 11 |
| 截图 | 截图 / 截图工具 / 截图和草图 / 截图工具 | 11 |
| 设置 | ZTools 设置 / 系统设置 / 通用设置 / 远程设置 / 高级显示设置 / 高级键盘设置 | 12 |
| 记事本 | 记事本 | 10 |
| steam | Steam | 7 |
| QQ / QQ音乐 | 11 |
中英文都能命中,拼音也行。它的索引来源是开始菜单 / 桌面快捷方式 / 系统设置面板,所以搜「设置」会同时冒出 Windows 自带的 5 个设置页,跟 ZTools 自己的设置混在一起。



同名结果会挤在一起
搜「截图」,第一段出现 4 个图标:截图 / 截图工具 / 截图和草图 / 截图工具。后两个「截图工具」图标颜色不同,一个带齿轮一个带画笔,说明它们来自不同来源,但显示名一样。
这时候只能靠图标和位置区分,名字帮不上忙。想要确定点,按 Tab 逐个选中看高亮,比用鼠标猜稳,代价是每多一个候选就多按 1 次。
从按键到出结果,最慢 1.15 秒
测法是从按下第一个字符开始,每 15 毫秒轮询一次页面节点数,节点一变就记时。连测 8 次,冷查询和热查询差了两个数量级。
冷查询(进程刚起)
1099.0 ms
1155.6 ms
热查询(索引已加载)
28.7 / 31.0 / 31.3 / 34.2 / 54.3 / 54.4 ms
中位数 44.3 ms
| 指标 | 数值 | 说明 |
|---|---|---|
| 最快 | 28.7 | 毫秒 |
| 中位 | 44.3 | 毫秒 |
| 最慢(热) | 54.4 | 毫秒 |
| 最慢(冷) | 1155.6 | 毫秒 |
44 毫秒的体感是「字还没打完,结果已经在了」。1155.6 毫秒那两次发生在进程刚起来、索引还没建完的时候,第一次搜索会明显停顿 1 秒以上,之后就正常。
它占多少资源
这个量级在 Electron 应用里算轻的。界面元素只有 587 个 DOM 节点,JS 堆 10.9 MB,说明大部分工作在原生侧,渲染进程只负责画那个 317 MB 目录里的一个框。
| 指标 | 数值 |
|---|---|
| JS 堆 | 10.9 |
| DOM 节点 | 587 |
| 解包体积 | 317 |
| 主程序 | 212 |
代价落在磁盘上。317 MB 里有 212 MB 是主程序,装 10 个这类工具就是 3 GB。官方也提供 zip 版,不装只解压,占的还是这些空间。

和 uTools 的差别
它把自己定位成 uTools 的开源实现,功能对齐到能用,生态不在一个量级。插件市场上不去的时候,剩下的差别只有那 44 毫秒的搜索。
| 对比项 | ZTools | uTools |
|---|---|---|
| 源码 | 开源 | 闭源 |
| 插件来源 | 自建市场,需联网 | 官方市场,需登录 |
| 本地搜索 | 可用,离线也能搜 | 可用 |
| 快捷键 | 托盘里配置 | 默认 Alt+Space |
按一下就搜这个动作,两者没有区别。把插件堆进工作流这件事,开源的这套还差得远。
什么情况下别装
这类工具的收益完全取决于你每天按多少次热键。一周用两次的人,为 317 MB 换一个搜索框不划算,Windows 自带的开始菜单搜索已经够用。
| 你的情况 | 结论 |
|---|---|
| 每天开十几个应用、切换频繁 | 合适 |
| 想要插件生态 | 不合适,市场离线打不开 |
| 机器只有 4 GB 内存 | 谨慎,Electron 常驻不轻 |
| 只用浏览器和 Office | 不合适,Win 搜索够用 |
还有一点容易被忽略。它默认隐藏窗口,靠热键呼出,热键要在托盘菜单里设。第一次装完找不到界面的人不少,看到托盘里那个 Z 图标,右键才知道怎么配。
「开源版 uTools」要看是哪一半:搜索这一半做到了,插件生态那一半目前是空的。







