Windows 系统优化助手 —— 看得懂的系统体检 + 敢让你回滚的优化操作。
.NET 8 + WPF 单文件绿色应用,启动时请求管理员权限;需要传感器或受限白名单操作时按需连接提权代理(用完即退,无常驻服务)。
当前版本 1.1.1 · 仓库 https://github.com/moli-xia/magichelper · MIT License · 许可与免责说明见 LICENSE-AND-DISCLAIMER.txt
- 可解释的体检评分:
100 − Σ扣分,每个维度有扣分上限,每一分都能点开看证据;干净系统 ≥ 85 分(回归防线,防止规则膨胀制造焦虑)。 - 可撤销的每个写操作:先备份后修改,原值快照存入备份仓库;「设置中心 → 操作历史」逐条撤销。
- 三级风险分类:安全(默认勾选)/ 需确认(默认不勾)/ 高危(二次确认 + 明示不可逆)。
- 不伪造数据:拿不到的传感器、开机耗时、天气等如实显示「不支持 / 未测得 / 需要授权 / 暂不可用」,绝不用旧值或默认值凑数。
打开就体检:评分环给出 100 − Σ扣分 的结果,右侧四张指标卡是实时的内存占用、CPU 温度、系统盘余量和网络状态。推荐优化按扣分权重排序,点任一条直接跳到对应页面的那一项。
- CPU 温度经提权代理读 LibreHardwareMonitor;缺 PawnIO 内核驱动时如实显示原因,不编数字。
- 一键优化只执行安全级项目,执行前自动快照,事后可在操作历史逐条撤销。
- 右上角是日期、农历节气与天气(默认关闭):点日期打开日历并可创建定时提醒——提醒登记成 Windows 计划任务,助手没运行也会准时弹出。天气城市支持市、县、区检索,写不写「市 / 县 / 区」都能搜到。
19 条规则按安全 / 需确认 / 高危三级分类,默认送回收站,占用中的文件自动跳过;支持多盘回收站、勾选前预估与排除白名单。C 盘一键瘦身另按空间压力给建议,覆盖更新缓存、传递优化、商店应用、浏览器离线缓存与升级残留,可取消、可打开来源位置,并显示实际释放的空间。
1.1.0 的提速:扫描改成「枚举一趟同时拿到大小与时间戳」+规则并行,本机真实目录 3.4 万个文件从 2,246 ms 降到 270 ms;删除从逐个调用 Shell 改成每 1024 个一批,8,000 个小文件从 226 秒降到 43 秒。
注册表 / MSI 聚合 + 软件图标 + winget 更新与包列表导入导出,再加两件别处少见的事:
- 传统桌面软件跨盘迁移:复制校验后在原安装路径留下 NTFS 目录联接,快捷方式、服务和卸载器都不用改注册表;注册表没登记安装位置时按卸载程序 / 图标推断安装目录。已经迁移过的还能再迁(换个盘或搬回来),校验通过后把联接改指新位置并删除旧副本——全程只有一份文件,失败可完整回滚。
- 卸载后自动清理残留:清单和逐条结果直接挂在被卸载软件那一行下面。目录与快捷方式送回收站可还原,注册表项记入操作历史;服务残留只列出不自动删——它靠名称匹配,误删会连累别的软件。卸载完成与否只认注册表 / MSI 里条目是否还在,卸载器父进程秒退或用户中途取消都不会被误判成功。
Run 键 + 启动文件夹 + 计划任务 + 自动服务四源聚合,禁用走 Windows 原生 StartupApproved 机制(与任务管理器双向兼容,不删条目)。
指向的文件已经不存在的条目,进页面即移除:只动 Run 键与启动文件夹(值有快照、快捷方式进回收站,可在操作历史撤销),服务与计划任务只列出。判定宁可漏判也不错判——相对路径、网络盘、未就绪盘符、32 位项的 SysWOW64 重定向都不算失效。
Intel / 显卡 / 网卡 / 音频等硬件服务默认折叠,展开后写明关闭影响与保留建议。
SFC / DISM / 磁盘检查 / 网络重置带实时日志;Windows KMS 批量激活按版本自动匹配 GVLK。下方是系统维护工具卡片(注册表清理、服务管理、网络诊断、磁盘整理、预装应用清理、电源计划),末尾整行的更多工具里装着进程管理、Windows 功能、系统还原点、驱动备份、环境变量与开机日志。
文件清理(大文件 + 重复文件)、右键管理、文件粉碎(支持拖拽批量选择)、计划任务管理、桌面壁纸、网络测速——都在独立窗口里打开,互不打扰。
跨三十多个区域市场、两段档案窗口取图(约 15 天覆盖),整池看完自动开始新一轮,不会再出现「壁纸都已看过」。刷新只把图片放在内存里——不点「保存到本地」就不落盘;设为桌面与自动更换用的副本单独放在 wallpapers\desktop-cache\ 并按数量轮转。支持按分钟或小时自动更换。
依次测延迟、下载、上传、抖动与丢包,走 Cloudflare 全球边缘节点。1.1.0 重画了仪表盘:240° 刻度盘、渐变进度弧、沿弧滑动的指示球,中间整块留给读数。结果只保存在当前窗口,不写入本地文件。
| 页面 | 一句话 |
|---|---|
| 系统优化 | 40+ 条数据驱动调优目录(detect / apply / revert,应用前自动快照)+「系统安全开关」组(关闭 Windows 自动更新 / Defender,二次确认、可撤销) |
| 隐私保护 | 遥测 / 广告 ID / 活动历史关闭 + 使用痕迹清理,每项写明代价 |
| 硬件检测 | WMI 静态信息 + LibreHardwareMonitor 传感器(经提权代理)+ 硬盘 SMART 健康(剩余寿命 / 通电时间 / 写入量 / 关键属性)+ 报告导出 |
| 软件商店 | 自建服务端目录(PHP + MySQL,宝塔部署):卡片式展示、搜索分类排序分页;托管包与外部直链均在应用内下载,支持压缩包解压后打开程序;服务器托管包校验 SHA-256 |
| 设置中心 | 操作历史与撤销、备份策略、外观(浅色 / 深色 / 跟随系统)、开源许可清单 |
另有 optimizerDuck 功能对照实现:24 项桌面 / 任务栏 / 开发 / 隐私设置、完整计划任务查看与启停管理,以及 USB 选择性暂停与唤醒定时器 AC/DC 设置。功能边界与验证记录见 功能融合与检查。
dotnet build MagicHelper.sln -c Release
dotnet run --project src/MagicHelper # 开发运行
dotnet test # 单元 + 架构测试发布(单文件自包含):
dotnet publish src/MagicHelper -c Release -r win-x64 --self-contained -o publish
dotnet publish src/MagicHelper.Agent -c Release -r win-x64 --self-contained -o publish生成 Windows x64 安装包(需要 Inno Setup 6):
powershell -ExecutionPolicy Bypass -File build\package.ps1安装包输出到 publish\installer\MagicHelper-Setup-1.1.1.exe,主程序与提权代理会安装到同一目录;安装过程中会显示并要求接受许可与免责协议。安装或升级时会清除旧操作记录与旧设置,使首页天气等界面状态恢复默认;备份、壁纸和商店下载内容不受影响。
自动更新测试可在不改变当前工程版本的情况下生成旧版本包:
powershell -ExecutionPolicy Bypass -File build\package.ps1 -Version 1.0.0 -PublishOutput publish\release-1.0.0主程序 requireAdministrator;提权代理 MagicHelper.Agent.exe 必须同目录部署(同样为 requireAdministrator,主程序已提权时继承当前令牌启动,避免重复 UAC)。
src/
├── MagicHelper/ # WPF 主程序(requireAdministrator)
├── MagicHelper.Agent/ # 提权代理(requireAdministrator,命名管道 JSON-RPC)
├── MagicHelper.Contracts/ # IssueItem / IOptimizationModule / 提权操作白名单
├── MagicHelper.Core/ # 评分引擎 / 备份仓库 / 操作日志 / 体检编排 / 目录执行器
├── MagicHelper.Platform/ # 唯一允许 P/Invoke 与 Process.Start 的层
└── MagicHelper.Modules.* # Cleaner / Startup / Tweaks / Privacy / Services / Apps / Hardware / Tools
data/ # tweaks / privacy / services / cleaner-rules YAML(内嵌资源)
tests/ # 单元测试 + NetArchTest 架构测试
docs/ # 开发文档(13 篇)+ screenshots/(README 截图)
server/store/ # 软件商店服务端(PHP + MySQL,宝塔部署)
全部数据(扫描结果、备份、日志、日历提醒)存放于 %LOCALAPPDATA%\MagicHelper\,不出本机。无遥测、无心跳、无设备指纹。
出站请求只有这几处,全部可关:
| 场景 | 时机 | 发出去的内容 |
|---|---|---|
| 检查更新 | 手动点击;启动时自动检查默认关闭(开启后 24 小时最多一次) | 当前版本号 |
| 软件商店 | 打开商店页 / 下载安装包 | 目录请求与下载 |
| DNS 测速、网络测速 | 手动点击 | 测速流量 |
| Bing 壁纸 | 手动刷新 / 开启自动更换后按间隔 | 壁纸图片请求 |
| 首页天气 | 默认关闭;开启后每 30 分钟一次 | 只有你自己选定城市的经纬度 |
天气数据来自 Open-Meteo 公开接口(免费、无需 API Key)。城市由你在天气设置里搜索指定,助手不做 IP 定位、不读系统位置服务;搜索城市时只发送你输入的地名关键词,支持市、县、区(接口按名称前缀精确匹配,助手会把带 / 不带「市·县·区」的写法一并试过再合并结果)。关掉「在首页显示天气」后不再发起任何天气请求。崩溃报告默认关闭。
README 里的截图都由离屏渲染真实页面生成(
docs/screenshots/),数据是本机实测值,没有手工修图。
- 新增标准 MIT LICENSE,版权声明包含作者 moli-xia(MagicSoft)与开源地址 https://github.com/moli-xia/magichelper。
- 安装协议附完整 MIT 正文;系统操作说明不对 MIT 权利附加限制,第三方组件保留原许可证。
- 主程序输出、发布目录与安装包包含 LICENSE、许可与免责说明、第三方组件清单;设置中心显示项目许可和源码地址。
- 不再自动打包本地 PawnIO 安装器,与第三方清单一致;需要 CPU 温度驱动时通过硬件检测页打开官方网站获取。
桌面壁纸
- 取图池扩到三十多个区域市场、两段档案窗口(约 15 天),整池看完自动开始新一轮,不再出现「壁纸都已看过」。
- 刷新只把图片放在内存里,不点「保存到本地」就不落盘;设为桌面 / 自动更换的副本单独放在
wallpapers\desktop-cache\并按数量轮转。
软件管理
- 迁移过的软件可以再迁:按钮显示「再次迁移」,复制联接指向的实际目录,校验通过后改指新位置并删除旧副本,失败可回滚。
- 卸载后自动清理残留,清单与逐条结果挂在该软件下面;目录与快捷方式进回收站,注册表项记入操作历史,服务残留只列出。
- 卸载完成与否只认注册表 / MSI 是否还有该条目,卸载器父进程秒退或用户取消都不会误判成功;卸载与迁移结束后列表自动刷新。
清理提速与卡顿修复
- 扫描改为「枚举一趟拿全大小与时间戳」+规则并行:本机 3.4 万个文件 2,246 ms → 270 ms。
- 删除改为每 1024 个一批调用 Shell:8,000 个小文件 226 秒 → 43 秒。
- 修复「C 盘一键瘦身时应用卡死」:清理与扫描原来跑在 UI 线程上(
async方法在第一个 await 之前仍在调用线程),一批上千个文件的 Shell 删除要好几秒,窗口整段无响应。现在整段转到后台线程,实测 5,000 个文件的清理过程中界面最长停顿 30 ms;同时补上「正在创建系统还原点…」「正在清理 X(n/m)…」的实时进度,取消按钮全程可点。 - 还原点占用查询(
Win32_ShadowStorage)加 8 秒上限:VSS 卡住时不再把整个瘦身扫描拖住。 - 修复「一直卡在清理回收站」:
SHEmptyRecycleBin在条目上万时要跑一分多钟且不报进度、不响应取消(本机实测 2 万条目 60 秒)。改为直接清$Recycle.Bin下的条目,同样 2 万条目 5 秒完成,每 500 项报一次进度、取消当场生效;目录读不到才退回系统 API。 - 同一轮既选了清空回收站、又要删别的文件时不再往回收站中转(写 $I/$R 占掉大半时间,几秒后又被一起清掉),直接删并在结果里写明。
启动管理
- 指向的文件已不存在的条目进页面即移除(只动 Run 键与启动文件夹,留快照可撤销);判定排除相对路径、网络盘、未就绪盘符与 SysWOW64 重定向。
首页与天气
- 修复 CPU 温度显示为「需要 PawnIO 驱动」:PawnIO 2.x 装在
%ProgramFiles%\PawnIO且不写 PATH,而 LibreHardwareMonitor 按文件名加载PawnIOLib.dll,驱动装好也读不到温度。现在打开传感器前按绝对路径预加载该库,安装状态探测也不再只认 System32。 - 天气城市支持县、区:一次检索把带 / 不带「市·县·区」的写法都试过再合并,搜「梧州」「苍梧县」「顺德区」都有结果。
- 日期与天气卡片去掉鼠标悬停提示,需要的信息直接写在卡片上。
界面
- 侧栏「系统工具」改为扳手图标、「设置中心」改为齿轮,首页内存卡片的一键释放按钮改为扫帚。
- 网络测速仪表盘整体重画:240° 刻度盘、渐变进度弧、沿弧滑动的指示球,中间整块留给读数。
- 入口重排:计划任务管理回到实用工具页,更多工具搬到系统工具页并占满整行,Windows 功能并入更多工具。
安装包
- 许可与免责协议更新到 1.1.0:逐项写明会改变系统或删除数据的功能、网络请求时机,以及安装 / 升级 / 卸载对本地数据的影响;补上 UTF-8 BOM,否则安装向导按 ANSI 解码会显示乱码。
本项目原创代码采用 MIT License,允许使用、修改、分发及商业使用。分发软件副本或实质性部分时,须保留完整版权声明(其中含开源地址)与 MIT 许可声明。开源地址:**https://github.com/moli-xia/magichelper**。第三方组件仍按各自许可证授权。
产品行为与使用免责说明见 LICENSE-AND-DISCLAIMER.txt;第三方组件明细见 THIRD-PARTY-NOTICES.txt(含 GPL/AGPL 隔离声明)。





