PowerSwitcher
一个放在 Windows 托盘里的电源计划切换工具。
它解决的问题很具体:当你在笔记本上来回切换“插电工作”和“电池续航”场景时,不想每次都打开控制面板、系统设置或命令行去找电源计划。PowerSwitcher 把这件事收进托盘右键菜单里,让“节能 / 平衡 / 高性能 / 卓越性能”这些模式变成一次点击就能完成的操作。

为什么要做这个 fork
PowerSwitcher 基于原项目 petrroll/PowerSwitcher 改进而来。原项目已经提供了托盘切换、自动 AC/电池切换、开机启动和快捷键等基础能力。
这个 fork 的重点更偏向现代 Windows 11 使用体验:把配置集中到独立设置窗口里,补上中文本地化,处理 Windows 11 上常见的内置电源计划隐藏问题,并整理出更完整的安装包和 Release 发布流程。
Windows 11 的电源计划问题
在一些 Windows 11 笔记本上,尤其是使用 Modern Standby / S0 Low Power Idle 的设备里,powercfg /list 可能只显示“平衡”计划。
这并不一定代表其他内置计划完全不存在。节能、高性能、卓越性能这些计划可能仍然作为系统模板存在,只是没有复制成当前可见的电源计划。
PowerSwitcher 针对这个情况做了处理:当用户需要切换到缺失的内置计划时,程序会尝试使用系统内置模板 GUID 复制出对应计划,再激活它。
这让工具在新机器、重装系统后的笔记本,或者厂商只暴露单一电源模式的环境里更实用。
更谨慎的性能模式
高性能和卓越性能不是普通开关。
它们可能带来更高的功耗、发热、风扇噪音和更短的续航。PowerSwitcher 没有默认把这些模式直接暴露出来,而是在设置里增加了显式确认开关。只有用户确认允许后,才会显示和配置这些性能内置计划。
这个设计看起来保守,但很适合常驻托盘工具。它应该帮用户减少操作成本,而不是让用户在不知情的情况下把笔记本推到更耗电的状态。
自动切换
除了手动右键切换,PowerSwitcher 也支持根据供电状态自动切换电源计划。
例如:
- 接入电源时切到“高性能”或“平衡”
- 使用电池时切到“节能”
- 保留托盘菜单,随时手动覆盖当前计划
这类自动化很适合移动办公场景。插上电源时追求性能,拔掉电源时优先续航,逻辑清楚,也不需要额外记忆。
设置窗口
这个 fork 将配置集中到了主窗口里,并提供 Settings 和 About 两个 tab。
设置项包括:
- 界面语言
- 可见电源计划类型
- 是否显示和允许内置计划
- 是否允许高性能 / 卓越性能
- AC/电池自动切换规则
- 是否随 Windows 当前用户开机启动
- 检查 GitHub Releases 更新
这些配置原本分散在托盘交互、系统状态和启动项里。集中到一个窗口后,工具更像一个完整的 Windows 小应用,而不是只靠右键菜单拼出来的实用脚本。
技术栈
PowerSwitcher 是一个传统但可靠的 Windows 桌面项目:
- 语言:C#
- 运行时:.NET Framework 4.8
- UI:WPF + Windows Forms 托盘集成
- 电源计划操作:Windows power scheme API /
powercfg相关能力封装 - 配置:本地配置文件与用户级设置
- i18n:JSON 语言文件
- 安装包:Inno Setup
- 发布辅助:PowerShell 脚本 + GitHub Release
项目结构上分为核心电源计划库、托盘应用、安装包脚本和资源文件。核心逻辑负责枚举、激活和复制电源计划;托盘应用负责窗口、菜单、自动切换、启动项和更新检查。
适合场景
我觉得它适合这些场景:
- Windows 笔记本用户经常在插电和电池模式之间切换
- 开发、编译、游戏、出差等场景需要快速切换性能策略
- Windows 11 只显示“平衡”计划,但仍希望使用节能或高性能模式
- 想要一个轻量、常驻、可本地配置的电源计划工具