本项目处于早期测试阶段,很可能存在未知缺陷。它会挂起(冻结)系统上的进程,属于对系统状态有实际影响的操作。
请在自己承担风险的前提下使用,并先备份重要工作。发现任何问题都欢迎提交 Issue(见 .github/ISSUE_TEMPLATE)。
- 反作弊与杀毒软件永不被挂起:
MsMpEng、NisSrv、SecurityHealthService、腾讯 ACE、EAC、BattlEye、vgc/vgtray、usysdiag、LAVService等写死在脚本内的保护名单里,config.json与命令行参数都无法解除。 理由:挂起反作弊会导致游戏崩溃或封号;挂起杀毒属于 EDR 明确监控的恶意行为特征(同类 API 已被多个勒索软件与远控滥用过)。 - 系统关键进程通过
IsProcessCritical二次判定后跳过;会话 0 的服务进程默认整体不碰(skipSession0)。 - 自身进程链(脚本的祖先与后代)绝不冻结,避免把自己锁死。
- 前台全屏窗口所属进程在冻结瞬间被强制排除,避免把正在运行的游戏冻住。
- 只恢复自己冻结过的进程:会话日志按
pid + 进程名 + 启动时间戳记录指纹,PID 被系统回收给别的进程时跳过,绝不误恢复。 - 精确快照/还原:优先级、内存优先级、EcoQoS 位在冻结前读取原值,恢复时按原值写回。
- 通过
NtSuspendProcess冻结进程、NtResumeProcess恢复(成对使用,日志记录挂起计数)。 - 通过
EmptyWorkingSet回收被冻结进程的工作集(脏页会写入页文件,占用磁盘空间)。 - 可选地设置进程的内存优先级(
MEMORY_PRIORITY_VERY_LOW)与 EcoQoS(ProcessPowerThrottling),恢复时还原原值。 - 可选地给指定游戏进程提升到 HIGH 优先级,恢复时还原原值。
不会做的事:不写注册表、不改服务、不改电源计划、不改 Windows Defender 设置、不联网。
- 脚本不联网、不下载任何东西,全部逻辑可读(约 1500 行 PowerShell), 依赖的外部资料只有 Windows 官方 API 的常量定义(已在源码中注明来源)。
- 冻结跨用户/会话 0 的进程需要管理员权限;界面会在非管理员时给出提示。
- 如果你不信任现成脚本:先读源码,再用
-DryRun看它到底打算动谁。
若发现「保护名单可被绕过」「会误恢复非本工具冻结的进程」「会造成系统不稳定」这类问题,请直接开 Issue 并附上:
-DryRun 输出、state\current.json(可脱敏)、以及复现步骤。谢谢。