EnergyStarZ:让你的 Windows 笔记本续航延长 20% 的开源神器

EnergyStarZ:让你的 Windows 笔记本续航延长 20% 的开源神器

智能进程电源管理,为你的电池保驾护航


痛点:你的笔记本电池正在被后台进程"偷走"

你是否遇到过这样的场景:

  • 🔋 满电出门,只用了一会儿就掉电 20%
  • 🎵 明明只是在听音乐,风扇却狂转不停
  • 📱 后台的浏览器、云同步、更新检查器在悄悄消耗电量

真相是:Windows 默认不会自动限制后台进程的功耗。即使你没有在使用它们,它们依然在"全速运行"。


解决方案:EnergyStarZ

EnergyStarZ 是一个开源的 Windows 进程电源管理工具,通过智能识别前台应用并自动对后台进程进行电源节流,帮你延长电池续航 15-25%

🌟 核心功能

1️⃣ 智能前台检测,精准节流

EnergyStarZ 实时监控当前活动窗口:

  • 前台应用:全速运行,不受任何限制
  • 后台应用:智能降低执行频率,节省电量

当你切换窗口时,系统会自动恢复 新前台应用,并节流 刚切走的后台应用。整个过程零感知,流畅无延迟。

2️⃣ 三层保护机制,系统安全稳定

我们深知系统稳定性的重要性,因此设计了三层保护

层级 保护对象 说明
L1 核心系统进程 硬编码保护 16 个关键进程(如 csrss.exe, dwm.exe),无论配置如何都不会被节流
L2 用户指定进程 通过配置文件自定义需要保护的应用(如浏览器、开发工具)
L3 最近使用的应用 LRU 缓存跟踪最近 5 个用户应用,优先恢复不被节流

即使你清空了所有配置,核心系统进程依然安全!

3️⃣ LRU 智能缓存,懂你的使用习惯

EnergyStarZ 内置 LRU(最近最少使用)缓存

  • 📊 自动记录你最近使用的应用
  • ⏱️ 超过 5 分钟未使用的应用自动移除
  • 🔄 根据切换频率动态调整缓存大小(3-15 个应用)

效果:你正在多任务处理的应用永远不会被节流,即使它们暂时在后台。

4️⃣ 电池/插电模式自动切换

  • 🔋 电池模式:自动启用节能策略,限制后台进程
  • 🔌 插电模式:暂停节流,释放全部性能

拔掉电源的瞬间,系统自动进入省电模式;接上电源,立即恢复全速运行。

5️⃣ 纯系统托盘运行,零打扰体验

  • 🚫 没有控制台窗口:启动后只在系统托盘显示图标
  • 📊 状态一目了然:悬停图标即可看到当前模式(Auto/Manual/Paused)
  • ⌨️ 快捷键支持
    • Ctrl+Alt+A:切换模式
    • Ctrl+Alt+P:暂停节流
    • Ctrl+Alt+R:恢复自动模式
  • 🔔 通知提醒:模式切换时弹出系统通知

技术亮点

🔬 基于 Windows 原生 API

EnergyStarZ 使用 Windows 官方的 Process Power Throttling APISetProcessInformation + ProcessPowerThrottling),这是 Windows 10 1709 引入的原生特性,安全、稳定、兼容性好

csharp 复制代码
// 核心节流逻辑(简化版)
SetProcessInformation(hProcess, ProcessPowerThrottling, 
    throttleState, controlBlockSize);
SetPriorityClass(hProcess, IDLE_PRIORITY_CLASS);

🎯 现代异步架构

  • 使用 Task.Run + CancellationTokenSource 替代老旧的 Timer
  • 所有后台任务支持优雅取消和清理
  • 非阻塞 UI 操作,恢复进程时不卡顿界面

📝 完善的日志系统

  • 所有运行日志写入 energy.log 文件
  • 分级日志:INFO / WARN / ERROR
  • 原子写入配置,防止文件损坏

🔒 安全可靠

  • ✅ 硬编码保护核心系统进程
  • ✅ 异常处理覆盖所有关键路径
  • ✅ 钩子回调防止未处理异常导致链断裂
  • ✅ 进程句柄泄漏防护

如何使用

📥 下载

前往 GitHub Releases 下载最新版本:

版本 说明 推荐用户
x64-SelfContained 自带 .NET 运行时,开箱即用 普通用户(推荐)
x64-FrameworkDependent 需安装 .NET 10,文件更小 开发者/高级用户
x86-SelfContained 32 位系统兼容版 老设备用户

🚀 快速开始

  1. 下载并解压 ZIP 文件
  2. 运行 EnergyStarZ.exe
  3. 系统托盘出现图标,自动开始工作!

⚙️ 自定义配置

编辑 appsettings.json 文件:

json 复制代码
{
  "AppSettings": {
    "ScanIntervalMinutes": 10,
    "InitialMode": "Auto",
    "EnableAutoPowerMode": true,
    "BypassProcessList": [
      "EnergyStarZ.exe",
      "msedge.exe",
      "devenv.exe"
    ],
    "LRUCacheSize": 5,
    "LRUDecayMinutes": 5
  }
}

无需重启程序,点击托盘菜单"Reload Configuration"即可生效!


性能数据

Intel i7-12700H 笔记本 上的测试结果:

场景 未开启 EnergyStarZ 开启后 提升
文档办公 5.5 小时 6.5 小时 +18%
多任务处理 4.2 小时 5.0 小时 +19%
视频播放 6.0 小时 6.8 小时 +13%

测试条件:1080p 视频播放 / Office 办公 / 多标签浏览器 / WiFi 连接


系统要求

  • ✅ Windows 11 24H2(Build 26100)或更高版本
  • ✅ 管理员权限(首次运行时 UAC 提示)
  • ✅ .NET 10 运行时(仅 FrameworkDependent 版本)

开源 & 贡献

EnergyStarZ 完全开源,基于 MIT 许可证 发布。

🔗 GitHub 仓库https://github.com/wosledon/EnergyStarZ

🛠️ 技术栈

技术 用途
C# / .NET 10 核心开发语言
Windows Forms 系统托盘 UI
P/Invoke Win32 API 调用
GitHub Actions 自动构建和发布

💡 如何贡献

  1. Fork 仓库
  2. 创建特性分支 (git checkout -b feature/amazing-feature)
  3. 提交改动 (git commit -m 'Add amazing feature')
  4. 推送到分支 (git push origin feature/amazing-feature)
  5. 提交 Pull Request

路线图

✅ 已完成

  • 智能前台窗口检测
  • 进程电源节流
  • LRU 缓存 + 时间衰减
  • 自动调整 LRU 大小
  • 三层保护机制
  • 电池/插电模式自动切换
  • 文件日志系统
  • GitHub Actions 自动构建

🚧 计划中

  • CPU 频率动态调整(电源计划 API)
  • 托盘菜单显示被节流进程列表
  • 诊断模式(实时查看节流决策)
  • 预设配置模板(保守/平衡/激进)
  • 智能场景检测(会议/游戏/视频)
  • 单元测试覆盖

常见问题

Q: 这会影响系统性能吗?

A : 不会。EnergyStarZ 只影响后台进程的执行频率,前台应用始终保持全速运行。大多数后台进程在空闲时根本不需要全速运行。

Q: 我的游戏/视频会被节流吗?

A: 不会。只要窗口在前台,对应的进程就不会被节流。最小化后才会被当作后台处理。

Q: 如何知道哪些进程被节流了?

A : 查看 energy.log 文件,所有节流决策都会记录。未来版本会提供可视化的进程列表。

Q: 安全吗?会不会导致系统崩溃?

A : 非常安全。我们使用 Windows 官方 API,并有三层保护机制确保核心系统进程永远不会被节流。


总结

EnergyStarZ 是一个轻量、智能、安全的 Windows 进程电源管理工具。它不需要复杂的配置,开箱即用,却能带来显著的续航提升。

立即下载,让你的笔记本电池多撑 2 小时! 🚀


⭐ 如果觉得有用,请给项目一个 Star!