目录
ZeroTick:让 Windows 故障变得看得懂、能处理
日常使用 Windows 时,最让人恼火的往往不只是故障本身,而是系统很少说明究竟发生了什么:明明没有文件处于打开状态,U 盘却无法安全弹出;Wi-Fi、蓝牙或 USB 设备突然消失或反复断联;声音莫名失效;蓝屏后也只留下一串难以理解的代码。
为了把这些分散、晦涩的排查过程收拢到一个清晰的界面中,我借助 Cursor 和 Codex 开发并开源了 ZeroTick。这是一款面向 Windows 10/11 的轻量级系统故障诊断与实时追踪工具,将网络、音频、可移动存储、蓝牙、设备与驱动、蓝屏和端口问题集中在一起,并在风险可控、结果可验证时提供修复操作。项目详情与安装包见 GitHub 仓库。
为什么再做一个 Windows 诊断工具
Windows 并不缺少诊断工具。设备管理器、事件查看器、服务管理器、资源监视器和 PowerShell 都很强大,但它们分散在不同位置,输出也主要面向熟悉系统内部结构的人。
当蓝牙鼠标间歇性失联时,普通用户通常想知道的是:刚才是否真的断开、持续了多久、问题更像是设备本身还是蓝牙服务。系统给出的却可能只是一个设备实例路径、一个服务名称,或者一条稍纵即逝的事件记录。遇到音频或可移动存储问题时,同样需要在多个工具之间来回切换,才能拼出较完整的结论。
ZeroTick 的目标不是替代这些系统工具,而是把分散的系统信息整理成普通用户能够理解的结果:先给出设备名称、实际影响和处理建议;需要深入调查时,再在高级模式中展示实例 ID、PID、服务状态、原始错误和调试证据。
它能帮助排查什么
追踪突然消失的 USB 与蓝牙设备
ZeroTick 可以驻留在系统托盘,通过 Windows 设备事件监听 USB 与蓝牙设备的连接变化。设备断开后很快恢复时,软件会记录实际持续时间;小于一秒的间隔以毫秒显示,超过一秒则以秒显示并保留毫秒级精度。
普通模式会尽量显示 Windows 提供的友好名称或设备上报的产品名,不把 USB Composite Device、VID/PID 或冗长实例路径直接当作设备名称。确实需要定位驱动节点时,这些技术信息仍可在高级模式中查看。
这类记录适合回答一个具体问题:设备是否真的断开,还是只有应用暂时没有响应。一次事件不足以证明硬件损坏,但可以为后续排查供电、接口、驱动或设备固件提供可靠的时间线。
把常见诊断集中到同一处
网络页面会检查活动网卡、默认网关、DNS、关键服务、VPN 与代理,并在需要时识别使用本地代理的程序。音频页面列出播放与录音端点,可查看默认设备、音量、静音和共享或独占模式。音频设置写入后会重新读取系统状态,只有实际结果与请求一致时才显示成功。
可移动存储页面按物理设备聚合卷,区分已挂载、未解锁、无盘符、不可访问介质和读卡器空插槽。安全弹出失败时,它会尽可能说明占用程序或 Windows 返回的拒绝原因,而不是用一个笼统的“操作失败”结束。
蓝牙页面除显示适配器、驱动和支持服务状态外,还会在设备支持时读取 Windows 设备属性或标准 GATT Battery Service,并显示剩余电量。设备与驱动页面解释设备管理器错误;端口页面显示占用情况和可安全解除项;蓝屏页面整理 Minidump、BugCheck 记录及可用的 WinDbg 证据。
修复不能只是一个“看起来有效”的按钮
诊断软件最容易产生误导的地方,是把“命令已经执行”等同于“问题已经修复”。ZeroTick 的修复流程尽量遵循“先诊断、再执行、后验证”:正常运行的服务不会被无意义地重启;需要管理员权限的操作会明确提示;音频设置会在写入后重新读取;端口解除会等待目标进程实际退出;Windows 没有提供可靠接口的操作不会被包装成可用功能。
这也意味着一键修复并不承诺解决所有问题。涉及硬件故障、厂商驱动、固件、第三方安全软件或系统文件损坏时,软件更适合提供证据和下一步建议,而不是执行风险难以判断的自动修改。
如何开始使用
- 前往 GitHub Releases 下载最新的 Windows 安装包。项目同时提供 NSIS
.exe、MSI 和SHA256SUMS.txt。 - 完成安装后启动 ZeroTick。建议先保持普通模式,依次查看概览和出现问题的诊断页面。
- 如果问题偶发,可让软件最小化到托盘,在正常使用电脑的过程中等待事件再次出现。
- 先阅读诊断结果中的影响和建议,再决定是否执行修复。需要修改系统服务、设备状态或音频策略时,可能要以管理员身份重新启动。
- 只有在需要提交 Issue、核对驱动节点或继续进行专业排查时,再打开高级模式并导出相关信息。
设置页会列出所有受支持的界面语言。英文作为离线回退语言随应用提供,其他语言包可按需下载;首次启动时,软件会根据 Windows 首选语言选择最接近的可用语言。这样既能控制安装包体积,也能让每个语言包独立校验和更新。
一个典型的排查过程
假设蓝牙鼠标每天都会短暂失去连接,但 Windows 蓝牙设置看起来一切正常。可以先在 ZeroTick 的蓝牙页面确认适配器、支持服务、设备状态和电量,再让软件驻留托盘。问题再次发生后,回到概览查看时间线:如果同一设备出现明确的断开与恢复记录,就可以确认持续时间,并据此检查电量、省电策略、USB 蓝牙适配器供电或驱动;如果没有设备事件,则应优先排查应用、无线干扰或输入系统,而不是直接认定设备已被 Windows 移除。
类似地,可移动存储无法弹出时,应先查看占用程序和设备状态;声音消失时,应核对当前默认端点、静音、音量和音频服务;蓝屏问题则要区分“停止代码所代表的错误类型”与“调试证据实际指向的驱动或模块”。ZeroTick 会尽量保留这种证据层级,避免把推测写成确定结论。
隐私、安全与限制
ZeroTick 的诊断主要在本机完成,历史记录不会因为运行诊断而自动上传。只有用户主动导出记录、检查更新、打开项目链接或下载语言包时,才会发生相应的文件或网络操作。
格式化、移除蓝牙设备等可能造成数据丢失或需要重新配对的操作会要求明确确认。端口页也只允许解除经过限制的开发残留进程,不会把系统保留端口或正常应用连接当作可随意清理的对象。
目前发布的安装包尚未进行代码签名,Windows 可能显示安全提示。建议只从项目的 GitHub Releases 下载,并使用随版本提供的 SHA-256 清单核对文件。ZeroTick 不是杀毒软件、数据恢复工具或硬件压力测试工具;遇到磁盘异常或持续蓝屏时,应先备份重要数据,再结合厂商诊断或专业维修意见处理。
开源意味着什么
ZeroTick 采用 MIT License 开源。对系统诊断工具来说,可查看实现不仅是开发协作方式,也是一项重要的信任基础:用户可以核对一次“扫描”实际读取了什么,一次“修复”实际修改了什么,哪些结论来自系统证据,哪些只是建议。
如果你遇到无法识别的设备、误判、翻译问题,或某个按钮的实际行为与文案不符,欢迎在 GitHub Issues 提交复现信息,也可以发送邮件至:support@physchen.com。这些真实使用场景将帮助 ZeroTick 持续完善,成为一款简单、可信的 Windows 诊断工具。