Files
2026-08-02 18:08:19 +08:00

1.6 KiB

架构说明

项目组成

WindowsToolbox.App
    WPF 界面、MVVM、UAC 客户端

WindowsToolbox.ElevatedHost
    固定命令白名单、管理员权限系统修改

WindowsToolbox.Cli
    当前用户桌面归档计划任务入口

WindowsToolbox.Infrastructure
    注册表、进程、任务计划、快照、各功能实现

WindowsToolbox.Core
    命令、状态、结果、快照和配置模型

WindowsToolbox.Verification
    不修改系统的自动验证程序

执行流程

用户点击功能
  → 主程序生成强类型 ToolboxCommand
  → 普通文件操作直接执行
  → 系统操作写入 Pending 目录并请求 UAC
  → ElevatedHost 验证路径、时效和命令类型
  → 首次操作保存基线快照
  → 执行固定实现
  → 读取实际状态进行验证
  → 写入结果和操作历史
  → 主程序刷新系统状态

管理员执行器只接受枚举中的命令以及经过各模块验证的参数,不提供任意 CMD、PowerShell 或脚本执行入口。

扩展新功能

新增功能时应按以下顺序:

  1. ToolboxCommandKind 中添加固定命令。
  2. 在基础设施项目中实现模块服务。
  3. 确定原始状态的完整快照范围。
  4. ToolboxCommandDispatcher 注册执行分支和提权要求。
  5. 在 WPF ViewModel 暴露命令,在页面添加状态、风险说明、应用和恢复入口。
  6. 向 Verification 项目增加非破坏性验证。

每个修改操作必须满足幂等、可验证和尽可能可恢复;不能只根据进程退出码显示成功。